XPRBsync
| XPRBsync | 
  Purpose
 
  Synopsis
 
int XPRBsync(XPRBprob prob, int synctype);
 
  Arguments
 
| 
     prob 
     | 
     Reference to a problem.
     | ||||||
| 
     synctype 
     | 
     Type of the synchronization. Possible values:
     
 | 
  Return value
 
 0 if function executed successfully, 1 otherwise.
  Example
 
 The following forces BCL to reload the matrix into the Optimizer even if there has been no change other than bound changes to the problem definition in BCL since the preceding optimization:
 
XPRBprob expl2;
expl2 = XPRBnewprob("example2");
 ...
XPRBmipoptimize(expl2, "");
 ...
XPRBsync(expl2, XPRB_XPRS_PROB);
XPRBmipoptimize(expl2, "");
  Further information
 
 1. This function resets the BCL problem status.
 
 2.
 XPRB_XPRS_SOL: retrieves the current LP solution (through
 XPRSgetlpsol function and
 XPRS_LPOBJVAL attribute); correctly used also in
 intsol callbacks as, when an integer solution is found during a global search, it is always set up as an LP solution to the current node.
 
 3.
 XPRB_XPRS_SOLMIP: retrieves the last MIP solution found (through
 XPRSgetmipsol function and
 XPRS_MIPOBJVAL attribute); if used from an
 intsol callback, it will not necessarily return the solution that caused the invocation of the callback (it is possible that another thread finds a new integer solution before that one is retrieved).
 
 4.
 XPRB_XPRS_SOL and
 XPRB_XPRS_SOLMIP: the solution information in BCL is updated with the solution held in the Optimizer at the next solution access (only the objective value is updated immediately).
 
 5.
 XPRB_XPRS_PROB: at the next call to optimization or
 XPRBloadmat the problem is completely reloaded into the Optimizer; bound changes are not passed on to the problem loaded in the Optimizer any longer.
 
  Related topics
 
 
