next up previous contents Back to SYMPHONY Home Page
Next: user_send_lp_solution Up: User-written functions of the Previous: user_same_cuts

   
user_unpack_cuts

int user_unpack_cuts(void *user, int from, int one_row_only, int varnum, 
                     var_desc **vars, int cutnum, cut_data **cuts,
                     int *new_row_num, waiting_row ***new_rows)

Description:

The user has to interpret the given cuts as constraints for the current LP relaxation, i.e., he must decode the compact representation of the cuts (see the cut_data structure) into rows for the matrix. A pointer to the array of generated rows must be returned in ***new_rows (the user has to allocate this array) and their number in *new_row_num.

There is no post processing. There are no built-in default options.

Arguments:

void *user IN Pointer to the user-defined LP data structure.
     
int from IN See below in ``Notes''.
int one_row_only IN UNPACK_CUTS_SINGLE or UNPACK_CUTS_MULTIPLE (see notes below).
int varnum IN The number of variables.
var_desc **vars IN The variables currently in the problem.
int cutnum IN The number of cuts to be decoded.
cut_data **cuts IN Cuts that need to be converted to rows for the current LP. See ``Warning'' below.
     
int *new_row_num OUT Pointer to the number of rows in **new_rows.
waiting_row ***new_rows OUT Pointer to the array of pointers to the new rows.

Return values:

ERROR Error. The cuts are discarded.
USER_NO_PP User unpacked the cuts.

Wrapper invoked from:
Wherever a cut needs to be unpacked (multiple places).

Notes:




next up previous contents
Next: user_send_lp_solution Up: User-written functions of the Previous: user_same_cuts
Ted Ralphs
2000-09-08