/home/coin/SVN-release/CoinAll-1.1.0/Cbc/src/Cbc_C_Interface.h File Reference

#include "Coin_C_defines.h"

Include dependency graph for Cbc_C_Interface.h:

Go to the source code of this file.

Constructors and destructor

These do not have an exact analogue in C++. The user does not need to know structure of Cbc_Model.

For all functions outside this group there is an exact C++ analogue created by taking the first parameter out, removing the Cbc_ from name and applying the method to an object of type ClpSimplex.

COINLIBAPI double COINLINKAGE Cbc_getVersion ()
 Version.
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_newModel ()
 Default Cbc_Model constructor.
COINLIBAPI void COINLINKAGE Cbc_deleteModel (Cbc_Model *model)
 Cbc_Model Destructor.

Load model - loads some stuff and initializes others

COINLIBAPI void COINLINKAGE Cbc_loadProblem (Cbc_Model *model, const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub)
COINLIBAPI int COINLINKAGE Cbc_readMps (Cbc_Model *model, const char *filename)
 Read an mps file from the given filename.
COINLIBAPI void COINLINKAGE Cbc_writeMps (Cbc_Model *model, const char *filename)
 Write an mps file from the given filename.
COINLIBAPI char *COINLINKAGE Cbc_integerInformation (Cbc_Model *model)
 Integer information.
COINLIBAPI void COINLINKAGE Cbc_copyInIntegerInformation (Cbc_Model *model, const char *information)
 Copy in integer information.
COINLIBAPI void COINLINKAGE Cbc_deleteIntegerInformation (Cbc_Model *model)
 Drop integer informations.
COINLIBAPI void COINLINKAGE Cbc_resize (Cbc_Model *model, int newNumberRows, int newNumberColumns)
 Resizes rim part of model.
COINLIBAPI void COINLINKAGE Cbc_deleteRows (Cbc_Model *model, int number, const int *which)
 Deletes rows.
COINLIBAPI void COINLINKAGE Cbc_addRows (Cbc_Model *model, const int number, const double *rowLower, const double *rowUpper, const int *rowStarts, const int *columns, const double *elements)
 Add rows.
COINLIBAPI void COINLINKAGE Cbc_deleteColumns (Cbc_Model *model, int number, const int *which)
 Deletes columns.
COINLIBAPI void COINLINKAGE Cbc_addColumns (Cbc_Model *model, int number, const double *columnLower, const double *columnUpper, const double *objective, const int *columnStarts, const int *rows, const double *elements)
 Add columns.
COINLIBAPI void COINLINKAGE Cbc_dropNames (Cbc_Model *model)
 Drops names - makes lengthnames 0 and names empty.
COINLIBAPI void COINLINKAGE Cbc_copyNames (Cbc_Model *model, const char *const *rowNamesIn, const char *const *columnNamesIn)
 Copies in names.

gets and sets - you will find some synonyms at the end of this file

COINLIBAPI int COINLINKAGE Cbc_numberRows (Cbc_Model *model)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_numberColumns (Cbc_Model *model)
 Number of columns.
COINLIBAPI double COINLINKAGE Cbc_primalTolerance (Cbc_Model *model)
 Primal tolerance to use.
COINLIBAPI void COINLINKAGE Cbc_setPrimalTolerance (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI double COINLINKAGE Cbc_dualTolerance (Cbc_Model *model)
 Dual tolerance to use.
COINLIBAPI void COINLINKAGE Cbc_setDualTolerance (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI double COINLINKAGE Cbc_integerTolerance (Cbc_Model *model)
 Number of rows.
COINLIBAPI void COINLINKAGE Cbc_setIntegerTolerance (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI double COINLINKAGE Cbc_dualObjectiveLimit (Cbc_Model *model)
 Dual objective limit.
COINLIBAPI void COINLINKAGE Cbc_setDualObjectiveLimit (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI double COINLINKAGE Cbc_objectiveOffset (Cbc_Model *model)
 Objective offset.
COINLIBAPI void COINLINKAGE Cbc_setObjectiveOffset (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI void COINLINKAGE Cbc_problemName (Cbc_Model *model, int maxNumberCharacters, char *array)
 Fills in array with problem name.
COINLIBAPI int COINLINKAGE Cbc_setProblemName (Cbc_Model *model, int maxNumberCharacters, char *array)
 Sets problem name.
COINLIBAPI int COINLINKAGE Cbc_numberIterations (Cbc_Model *model)
 Number of iterations.
COINLIBAPI void COINLINKAGE Cbc_setNumberIterations (Cbc_Model *model, int numberIterations)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_maximumIterations (Cbc_Model *model)
 Maximum number of iterations.
COINLIBAPI void COINLINKAGE Cbc_setMaximumIterations (Cbc_Model *model, int value)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_maxNumNode (Cbc_Model *model)
 Maximum number of nodes.
COINLIBAPI void COINLINKAGE Cbc_setMaxNumNode (Cbc_Model *model, int value)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_maxNumSol (Cbc_Model *model)
 Number of rows.
COINLIBAPI void COINLINKAGE Cbc_setMaxNumSol (Cbc_Model *model, int value)
 Number of rows.
COINLIBAPI double COINLINKAGE Cbc_maximumSeconds (Cbc_Model *model)
 Maximum time in seconds (from when set called).
COINLIBAPI void COINLINKAGE Cbc_setMaximumSeconds (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_hitMaximumIterations (Cbc_Model *model)
 Returns true if hit maximum iterations (or time).
COINLIBAPI int COINLINKAGE Cbc_status (Cbc_Model *model)
 Status of problem: 0 - optimal 1 - primal infeasible 2 - dual infeasible 3 - stopped on iterations etc 4 - stopped due to errors.
COINLIBAPI void COINLINKAGE Cbc_setProblemStatus (Cbc_Model *model, int problemStatus)
 Set problem status.
COINLIBAPI int COINLINKAGE Cbc_secondaryStatus (Cbc_Model *model)
 Secondary status of problem - may get extended 0 - none 1 - primal infeasible because dual limit reached 2 - scaled problem optimal - unscaled has primal infeasibilities 3 - scaled problem optimal - unscaled has dual infeasibilities 4 - scaled problem optimal - unscaled has both dual and primal infeasibilities.
COINLIBAPI void COINLINKAGE Cbc_setSecondaryStatus (Cbc_Model *model, int status)
 Number of rows.
COINLIBAPI double COINLINKAGE Cbc_optimizationDirection (Cbc_Model *model)
 Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.
COINLIBAPI void COINLINKAGE Cbc_setOptimizationDirection (Cbc_Model *model, double value)
 Number of rows.
COINLIBAPI double *COINLINKAGE Cbc_primalRowSolution (Cbc_Model *model)
 Primal row solution.
COINLIBAPI double *COINLINKAGE Cbc_primalColumnSolution (Cbc_Model *model)
 Primal column solution.
COINLIBAPI double *COINLINKAGE Cbc_dualRowSolution (Cbc_Model *model)
 Dual row solution.
COINLIBAPI double *COINLINKAGE Cbc_dualColumnSolution (Cbc_Model *model)
 Reduced costs.
COINLIBAPI double *COINLINKAGE Cbc_rowLower (Cbc_Model *model)
 Row lower.
COINLIBAPI double *COINLINKAGE Cbc_rowUpper (Cbc_Model *model)
 Row upper.
COINLIBAPI double *COINLINKAGE Cbc_objective (Cbc_Model *model)
 Objective.
COINLIBAPI double *COINLINKAGE Cbc_columnLower (Cbc_Model *model)
 Column Lower.
COINLIBAPI double *COINLINKAGE Cbc_columnUpper (Cbc_Model *model)
 Column Upper.
COINLIBAPI int COINLINKAGE Cbc_getNumElements (Cbc_Model *model)
 Number of elements in matrix.
COINLIBAPI const CoinBigIndex
*COINLINKAGE 
Cbc_getVectorStarts (Cbc_Model *model)
 Column starts in matrix.
COINLIBAPI const int *COINLINKAGE Cbc_getIndices (Cbc_Model *model)
 Row indices in matrix.
COINLIBAPI const int *COINLINKAGE Cbc_getVectorLengths (Cbc_Model *model)
 Column vector lengths in matrix.
COINLIBAPI const double *COINLINKAGE Cbc_getElements (Cbc_Model *model)
 Element values in matrix.
COINLIBAPI double COINLINKAGE Cbc_objectiveValue (Cbc_Model *model)
 Objective value.
COINLIBAPI double *COINLINKAGE Cbc_infeasibilityRay (Cbc_Model *model)
 Infeasibility/unbounded ray (NULL returned if none/wrong) Up to user to use delete [] on these arrays.
COINLIBAPI double *COINLINKAGE Cbc_unboundedRay (Cbc_Model *model)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_statusExists (Cbc_Model *model)
 See if status array exists (partly for OsiClp).
COINLIBAPI void COINLINKAGE Cbc_getBasisStatus (Cbc_Model *model, int *cstat, int *rstat)
 Return address of status array (char[numberRows+numberColumns]).
COINLIBAPI void COINLINKAGE Cbc_setBasisStatus (Cbc_Model *model, int *cstat, int *rstat)
 Copy in status vector.
COINLIBAPI void COINLINKAGE Cbc_setUserPointer (Cbc_Model *model, void *pointer)
 User pointer for whatever reason.
COINLIBAPI void *COINLINKAGE Cbc_getUserPointer (Cbc_Model *model)
 Number of rows.

Message handling. Call backs are handled by ONE function

COINLIBAPI void COINLINKAGE Cbc_registerCallBack (Cbc_Model *model, cbc_callback userCallBack)
 Pass in Callback function.
COINLIBAPI void COINLINKAGE Cbc_clearCallBack (Cbc_Model *model)
 Unset Callback function.
COINLIBAPI void COINLINKAGE Cbc_setLogLevel (Cbc_Model *model, int value)
 Amount of print out: 0 - none 1 - just final 2 - just factorizations 3 - as 2 plus a bit more 4 - verbose above that 8,16,32 etc just for selective debug.
COINLIBAPI int COINLINKAGE Cbc_logLevel (Cbc_Model *model)
 Pass in Callback function.
COINLIBAPI int COINLINKAGE Cbc_lengthNames (Cbc_Model *model)
 length of names (0 means no names0
COINLIBAPI void COINLINKAGE Cbc_rowName (Cbc_Model *model, int iRow, char *name)
 Fill in array (at least lengthNames+1 long) with a row name.
COINLIBAPI void COINLINKAGE Cbc_columnName (Cbc_Model *model, int iColumn, char *name)
 Fill in array (at least lengthNames+1 long) with a column name.

Functions most useful to user

COINLIBAPI int COINLINKAGE Cbc_initialSolve (Cbc_Model *model)
 General solve algorithm which can do presolve.
COINLIBAPI int COINLINKAGE Cbc_branchAndBound (Cbc_Model *model)
 General solve algorithm which can do presolve.
COINLIBAPI void COINLINKAGE Cbc_scaling (Cbc_Model *model, int mode)
 Sets or unsets scaling, 0 -off, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic(later).
COINLIBAPI int COINLINKAGE Cbc_scalingFlag (Cbc_Model *model)
 Gets scalingFlag.
COINLIBAPI int COINLINKAGE Cbc_crash (Cbc_Model *model, double gap, int pivot)
 Crash - at present just aimed at dual, returns -2 if dual preferred and crash basis created -1 if dual preferred and all slack basis preferred 0 if basis going in was not all slack 1 if primal preferred and all slack basis preferred 2 if primal preferred and crash basis created.

most useful gets and sets

COINLIBAPI int COINLINKAGE Cbc_primalFeasible (Cbc_Model *model)
 If problem is primal feasible.
COINLIBAPI int COINLINKAGE Cbc_dualFeasible (Cbc_Model *model)
 If problem is dual feasible.
COINLIBAPI double COINLINKAGE Cbc_dualBound (Cbc_Model *model)
 Dual bound.
COINLIBAPI void COINLINKAGE Cbc_setDualBound (Cbc_Model *model, double value)
 If problem is primal feasible.
COINLIBAPI double COINLINKAGE Cbc_infeasibilityCost (Cbc_Model *model)
 Infeasibility cost.
COINLIBAPI void COINLINKAGE Cbc_setInfeasibilityCost (Cbc_Model *model, double value)
 If problem is primal feasible.
COINLIBAPI int COINLINKAGE Cbc_perturbation (Cbc_Model *model)
 Perturbation: 50 - switch on perturbation 100 - auto perturb if takes too long (1.0e-6 largest nonzero) 101 - we are perturbed 102 - don't try perturbing again default is 100 others are for playing.
COINLIBAPI void COINLINKAGE Cbc_setPerturbation (Cbc_Model *model, int value)
 If problem is primal feasible.
COINLIBAPI int COINLINKAGE Cbc_algorithm (Cbc_Model *model)
 Current (or last) algorithm.
COINLIBAPI void COINLINKAGE Cbc_setAlgorithm (Cbc_Model *model, int value)
 Set algorithm.
COINLIBAPI double COINLINKAGE Cbc_sumDualInfeasibilities (Cbc_Model *model)
 Sum of dual infeasibilities.
COINLIBAPI int COINLINKAGE Cbc_numberDualInfeasibilities (Cbc_Model *model)
 Number of dual infeasibilities.
COINLIBAPI double COINLINKAGE Cbc_sumPrimalInfeasibilities (Cbc_Model *model)
 Sum of primal infeasibilities.
COINLIBAPI int COINLINKAGE Cbc_numberPrimalInfeasibilities (Cbc_Model *model)
 Number of primal infeasibilities.
COINLIBAPI int COINLINKAGE Cbc_saveModel (Cbc_Model *model, const char *fileName)
 Save model to file, returns 0 if success.
COINLIBAPI int COINLINKAGE Cbc_restoreModel (Cbc_Model *model, const char *fileName)
 Restore model from file, returns 0 if success, deletes current model.
COINLIBAPI void COINLINKAGE Cbc_checkSolution (Cbc_Model *model)
 Just check solution (for external use) - sets sum of infeasibilities etc.

gets and sets - some synonyms

COINLIBAPI int COINLINKAGE Cbc_getNumRows (Cbc_Model *model)
 Number of rows.
COINLIBAPI int COINLINKAGE Cbc_getNumCols (Cbc_Model *model)
 Number of columns.
COINLIBAPI int COINLINKAGE Cbc_getIterationCount (Cbc_Model *model)
 Number of iterations.
COINLIBAPI int COINLINKAGE Cbc_isAbandoned (Cbc_Model *model)
 Are there a numerical difficulties?
COINLIBAPI int COINLINKAGE Cbc_isProvenOptimal (Cbc_Model *model)
 Is optimality proven?
COINLIBAPI int COINLINKAGE Cbc_isProvenPrimalInfeasible (Cbc_Model *model)
 Is primal infeasiblity proven?
COINLIBAPI int COINLINKAGE Cbc_isProvenDualInfeasible (Cbc_Model *model)
 Is dual infeasiblity proven?
COINLIBAPI int COINLINKAGE Cbc_isPrimalObjectiveLimitReached (Cbc_Model *model)
 Is the given primal objective limit reached?
COINLIBAPI int COINLINKAGE Cbc_isDualObjectiveLimitReached (Cbc_Model *model)
 Is the given dual objective limit reached?
COINLIBAPI int COINLINKAGE Cbc_isIterationLimitReached (Cbc_Model *model)
 Iteration limit reached?
COINLIBAPI double COINLINKAGE Cbc_getObjSense (Cbc_Model *model)
 Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.
COINLIBAPI const double *COINLINKAGE Cbc_getRowActivity (Cbc_Model *model)
 Primal row solution.
COINLIBAPI const double *COINLINKAGE Cbc_getColSolution (Cbc_Model *model)
 Primal column solution.
COINLIBAPI void COINLINKAGE Cbc_setColSolution (Cbc_Model *model, const double *input)
 Number of rows.
COINLIBAPI const double *COINLINKAGE Cbc_getRowPrice (Cbc_Model *model)
 Dual row solution.
COINLIBAPI const double *COINLINKAGE Cbc_getReducedCost (Cbc_Model *model)
 Reduced costs.
COINLIBAPI const double *COINLINKAGE Cbc_getRowLower (Cbc_Model *model)
 Row lower.
COINLIBAPI const double *COINLINKAGE Cbc_getRowUpper (Cbc_Model *model)
 Row upper.
COINLIBAPI const double *COINLINKAGE Cbc_getObjCoefficients (Cbc_Model *model)
 Objective.
COINLIBAPI const double *COINLINKAGE Cbc_getColLower (Cbc_Model *model)
 Column Lower.
COINLIBAPI const double *COINLINKAGE Cbc_getColUpper (Cbc_Model *model)
 Column Upper.
COINLIBAPI double COINLINKAGE Cbc_getObjValue (Cbc_Model *model)
 Objective value.
COINLIBAPI void COINLINKAGE Cbc_printModel (Cbc_Model *model, const char *argPrefix)
 Print the model.
COINLIBAPI int COINLINKAGE Cbc_isInteger (Cbc_Model *model, int i)
 Determine whether the variable at location i is integer restricted.
COINLIBAPI double COINLINKAGE Cbc_cpuTime (Cbc_Model *model)
 Return CPU time.
COINLIBAPI int COINLINKAGE Cbc_getNodeCount (Cbc_Model *model)
 Number of nodes explored in B&B tree.
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_clone (Cbc_Model *model)
 Return a copy of this model.
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_setContinuous (Cbc_Model *model, int iColumn)
 Set this the variable to be continuous.
COINLIBAPI void COINLINKAGE Cbc_addSOS_Dense (Cbc_Model *model, int numObjects, const int *len, const int **which, const double *weights, const int type)
 Add SOS constraints to the model using dense matrix.
COINLIBAPI void COINLINKAGE Cbc_addSOS_Sparse (Cbc_Model *model, const int *rowStarts, const int *rowIndices, const double *weights, const int type)
 Add SOS constraints to the model using row-order matrix.
COINLIBAPI void COINLINKAGE Cbc_deleteObjects (Cbc_Model *model)
 Delete all object information.
COINLIBAPI void COINLINKAGE Cbc_printSolution (Cbc_Model *model)
 Print the solution.
COINLIBAPI int COINLINKAGE Cbc_initialDualSolve (Cbc_Model *model)
 Dual initial solve.
COINLIBAPI int COINLINKAGE Cbc_initialPrimalSolve (Cbc_Model *model)
 Primal initial solve.
COINLIBAPI int COINLINKAGE Cbc_dual (Cbc_Model *model, int ifValuesPass)
 Dual algorithm - see ClpSimplexDual.hpp for method.
COINLIBAPI int COINLINKAGE Cbc_primal (Cbc_Model *model, int ifValuesPass)
 Primal algorithm - see ClpSimplexPrimal.hpp for method.


Function Documentation

COINLIBAPI double COINLINKAGE Cbc_getVersion (  ) 

Version.

COINLIBAPI Cbc_Model* COINLINKAGE Cbc_newModel (  ) 

Default Cbc_Model constructor.

COINLIBAPI void COINLINKAGE Cbc_deleteModel ( Cbc_Model model  ) 

Cbc_Model Destructor.

COINLIBAPI void COINLINKAGE Cbc_loadProblem ( Cbc_Model model,
const int  numcols,
const int  numrows,
const CoinBigIndex start,
const int *  index,
const double *  value,
const double *  collb,
const double *  colub,
const double *  obj,
const double *  rowlb,
const double *  rowub 
)

COINLIBAPI int COINLINKAGE Cbc_readMps ( Cbc_Model model,
const char *  filename 
)

Read an mps file from the given filename.

COINLIBAPI void COINLINKAGE Cbc_writeMps ( Cbc_Model model,
const char *  filename 
)

Write an mps file from the given filename.

COINLIBAPI char* COINLINKAGE Cbc_integerInformation ( Cbc_Model model  ) 

Integer information.

COINLIBAPI void COINLINKAGE Cbc_copyInIntegerInformation ( Cbc_Model model,
const char *  information 
)

Copy in integer information.

COINLIBAPI void COINLINKAGE Cbc_deleteIntegerInformation ( Cbc_Model model  ) 

Drop integer informations.

COINLIBAPI void COINLINKAGE Cbc_resize ( Cbc_Model model,
int  newNumberRows,
int  newNumberColumns 
)

Resizes rim part of model.

COINLIBAPI void COINLINKAGE Cbc_deleteRows ( Cbc_Model model,
int  number,
const int *  which 
)

Deletes rows.

COINLIBAPI void COINLINKAGE Cbc_addRows ( Cbc_Model model,
const int  number,
const double *  rowLower,
const double *  rowUpper,
const int *  rowStarts,
const int *  columns,
const double *  elements 
)

Add rows.

COINLIBAPI void COINLINKAGE Cbc_deleteColumns ( Cbc_Model model,
int  number,
const int *  which 
)

Deletes columns.

COINLIBAPI void COINLINKAGE Cbc_addColumns ( Cbc_Model model,
int  number,
const double *  columnLower,
const double *  columnUpper,
const double *  objective,
const int *  columnStarts,
const int *  rows,
const double *  elements 
)

Add columns.

COINLIBAPI void COINLINKAGE Cbc_dropNames ( Cbc_Model model  ) 

Drops names - makes lengthnames 0 and names empty.

COINLIBAPI void COINLINKAGE Cbc_copyNames ( Cbc_Model model,
const char *const *  rowNamesIn,
const char *const *  columnNamesIn 
)

Copies in names.

COINLIBAPI int COINLINKAGE Cbc_numberRows ( Cbc_Model model  ) 

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_numberColumns ( Cbc_Model model  ) 

Number of columns.

COINLIBAPI double COINLINKAGE Cbc_primalTolerance ( Cbc_Model model  ) 

Primal tolerance to use.

COINLIBAPI void COINLINKAGE Cbc_setPrimalTolerance ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI double COINLINKAGE Cbc_dualTolerance ( Cbc_Model model  ) 

Dual tolerance to use.

COINLIBAPI void COINLINKAGE Cbc_setDualTolerance ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI double COINLINKAGE Cbc_integerTolerance ( Cbc_Model model  ) 

Number of rows.

COINLIBAPI void COINLINKAGE Cbc_setIntegerTolerance ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI double COINLINKAGE Cbc_dualObjectiveLimit ( Cbc_Model model  ) 

Dual objective limit.

COINLIBAPI void COINLINKAGE Cbc_setDualObjectiveLimit ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI double COINLINKAGE Cbc_objectiveOffset ( Cbc_Model model  ) 

Objective offset.

COINLIBAPI void COINLINKAGE Cbc_setObjectiveOffset ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI void COINLINKAGE Cbc_problemName ( Cbc_Model model,
int  maxNumberCharacters,
char *  array 
)

Fills in array with problem name.

COINLIBAPI int COINLINKAGE Cbc_setProblemName ( Cbc_Model model,
int  maxNumberCharacters,
char *  array 
)

Sets problem name.

Must have at end.

COINLIBAPI int COINLINKAGE Cbc_numberIterations ( Cbc_Model model  ) 

Number of iterations.

COINLIBAPI void COINLINKAGE Cbc_setNumberIterations ( Cbc_Model model,
int  numberIterations 
)

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_maximumIterations ( Cbc_Model model  ) 

Maximum number of iterations.

COINLIBAPI void COINLINKAGE Cbc_setMaximumIterations ( Cbc_Model model,
int  value 
)

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_maxNumNode ( Cbc_Model model  ) 

Maximum number of nodes.

COINLIBAPI void COINLINKAGE Cbc_setMaxNumNode ( Cbc_Model model,
int  value 
)

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_maxNumSol ( Cbc_Model model  ) 

Number of rows.

COINLIBAPI void COINLINKAGE Cbc_setMaxNumSol ( Cbc_Model model,
int  value 
)

Number of rows.

COINLIBAPI double COINLINKAGE Cbc_maximumSeconds ( Cbc_Model model  ) 

Maximum time in seconds (from when set called).

COINLIBAPI void COINLINKAGE Cbc_setMaximumSeconds ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_hitMaximumIterations ( Cbc_Model model  ) 

Returns true if hit maximum iterations (or time).

COINLIBAPI int COINLINKAGE Cbc_status ( Cbc_Model model  ) 

Status of problem: 0 - optimal 1 - primal infeasible 2 - dual infeasible 3 - stopped on iterations etc 4 - stopped due to errors.

COINLIBAPI void COINLINKAGE Cbc_setProblemStatus ( Cbc_Model model,
int  problemStatus 
)

Set problem status.

COINLIBAPI int COINLINKAGE Cbc_secondaryStatus ( Cbc_Model model  ) 

Secondary status of problem - may get extended 0 - none 1 - primal infeasible because dual limit reached 2 - scaled problem optimal - unscaled has primal infeasibilities 3 - scaled problem optimal - unscaled has dual infeasibilities 4 - scaled problem optimal - unscaled has both dual and primal infeasibilities.

COINLIBAPI void COINLINKAGE Cbc_setSecondaryStatus ( Cbc_Model model,
int  status 
)

Number of rows.

COINLIBAPI double COINLINKAGE Cbc_optimizationDirection ( Cbc_Model model  ) 

Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.

COINLIBAPI void COINLINKAGE Cbc_setOptimizationDirection ( Cbc_Model model,
double  value 
)

Number of rows.

COINLIBAPI double* COINLINKAGE Cbc_primalRowSolution ( Cbc_Model model  ) 

Primal row solution.

COINLIBAPI double* COINLINKAGE Cbc_primalColumnSolution ( Cbc_Model model  ) 

Primal column solution.

COINLIBAPI double* COINLINKAGE Cbc_dualRowSolution ( Cbc_Model model  ) 

Dual row solution.

COINLIBAPI double* COINLINKAGE Cbc_dualColumnSolution ( Cbc_Model model  ) 

Reduced costs.

COINLIBAPI double* COINLINKAGE Cbc_rowLower ( Cbc_Model model  ) 

Row lower.

COINLIBAPI double* COINLINKAGE Cbc_rowUpper ( Cbc_Model model  ) 

Row upper.

COINLIBAPI double* COINLINKAGE Cbc_objective ( Cbc_Model model  ) 

Objective.

COINLIBAPI double* COINLINKAGE Cbc_columnLower ( Cbc_Model model  ) 

Column Lower.

COINLIBAPI double* COINLINKAGE Cbc_columnUpper ( Cbc_Model model  ) 

Column Upper.

COINLIBAPI int COINLINKAGE Cbc_getNumElements ( Cbc_Model model  ) 

Number of elements in matrix.

COINLIBAPI const CoinBigIndex* COINLINKAGE Cbc_getVectorStarts ( Cbc_Model model  ) 

Column starts in matrix.

COINLIBAPI const int* COINLINKAGE Cbc_getIndices ( Cbc_Model model  ) 

Row indices in matrix.

COINLIBAPI const int* COINLINKAGE Cbc_getVectorLengths ( Cbc_Model model  ) 

Column vector lengths in matrix.

COINLIBAPI const double* COINLINKAGE Cbc_getElements ( Cbc_Model model  ) 

Element values in matrix.

COINLIBAPI double COINLINKAGE Cbc_objectiveValue ( Cbc_Model model  ) 

Objective value.

COINLIBAPI double* COINLINKAGE Cbc_infeasibilityRay ( Cbc_Model model  ) 

Infeasibility/unbounded ray (NULL returned if none/wrong) Up to user to use delete [] on these arrays.

COINLIBAPI double* COINLINKAGE Cbc_unboundedRay ( Cbc_Model model  ) 

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_statusExists ( Cbc_Model model  ) 

See if status array exists (partly for OsiClp).

COINLIBAPI void COINLINKAGE Cbc_getBasisStatus ( Cbc_Model model,
int *  cstat,
int *  rstat 
)

Return address of status array (char[numberRows+numberColumns]).

COINLIBAPI void COINLINKAGE Cbc_setBasisStatus ( Cbc_Model model,
int *  cstat,
int *  rstat 
)

Copy in status vector.

COINLIBAPI void COINLINKAGE Cbc_setUserPointer ( Cbc_Model model,
void *  pointer 
)

User pointer for whatever reason.

COINLIBAPI void* COINLINKAGE Cbc_getUserPointer ( Cbc_Model model  ) 

Number of rows.

COINLIBAPI void COINLINKAGE Cbc_registerCallBack ( Cbc_Model model,
cbc_callback  userCallBack 
)

Pass in Callback function.

Message numbers up to 1000000 are Clp, Coin ones have 1000000 added

COINLIBAPI void COINLINKAGE Cbc_clearCallBack ( Cbc_Model model  ) 

Unset Callback function.

COINLIBAPI void COINLINKAGE Cbc_setLogLevel ( Cbc_Model model,
int  value 
)

Amount of print out: 0 - none 1 - just final 2 - just factorizations 3 - as 2 plus a bit more 4 - verbose above that 8,16,32 etc just for selective debug.

COINLIBAPI int COINLINKAGE Cbc_logLevel ( Cbc_Model model  ) 

Pass in Callback function.

Message numbers up to 1000000 are Clp, Coin ones have 1000000 added

COINLIBAPI int COINLINKAGE Cbc_lengthNames ( Cbc_Model model  ) 

length of names (0 means no names0

COINLIBAPI void COINLINKAGE Cbc_rowName ( Cbc_Model model,
int  iRow,
char *  name 
)

Fill in array (at least lengthNames+1 long) with a row name.

COINLIBAPI void COINLINKAGE Cbc_columnName ( Cbc_Model model,
int  iColumn,
char *  name 
)

Fill in array (at least lengthNames+1 long) with a column name.

COINLIBAPI int COINLINKAGE Cbc_initialSolve ( Cbc_Model model  ) 

General solve algorithm which can do presolve.

See ClpSolve.hpp for options

COINLIBAPI int COINLINKAGE Cbc_branchAndBound ( Cbc_Model model  ) 

General solve algorithm which can do presolve.

See ClpSolve.hpp for options

COINLIBAPI void COINLINKAGE Cbc_scaling ( Cbc_Model model,
int  mode 
)

Sets or unsets scaling, 0 -off, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic(later).

COINLIBAPI int COINLINKAGE Cbc_scalingFlag ( Cbc_Model model  ) 

Gets scalingFlag.

COINLIBAPI int COINLINKAGE Cbc_crash ( Cbc_Model model,
double  gap,
int  pivot 
)

Crash - at present just aimed at dual, returns -2 if dual preferred and crash basis created -1 if dual preferred and all slack basis preferred 0 if basis going in was not all slack 1 if primal preferred and all slack basis preferred 2 if primal preferred and crash basis created.

if gap between bounds <="gap" variables can be flipped

If "pivot" is 0 No pivoting (so will just be choice of algorithm) 1 Simple pivoting e.g. gub 2 Mini iterations

COINLIBAPI int COINLINKAGE Cbc_primalFeasible ( Cbc_Model model  ) 

If problem is primal feasible.

COINLIBAPI int COINLINKAGE Cbc_dualFeasible ( Cbc_Model model  ) 

If problem is dual feasible.

COINLIBAPI double COINLINKAGE Cbc_dualBound ( Cbc_Model model  ) 

Dual bound.

COINLIBAPI void COINLINKAGE Cbc_setDualBound ( Cbc_Model model,
double  value 
)

If problem is primal feasible.

COINLIBAPI double COINLINKAGE Cbc_infeasibilityCost ( Cbc_Model model  ) 

Infeasibility cost.

COINLIBAPI void COINLINKAGE Cbc_setInfeasibilityCost ( Cbc_Model model,
double  value 
)

If problem is primal feasible.

COINLIBAPI int COINLINKAGE Cbc_perturbation ( Cbc_Model model  ) 

Perturbation: 50 - switch on perturbation 100 - auto perturb if takes too long (1.0e-6 largest nonzero) 101 - we are perturbed 102 - don't try perturbing again default is 100 others are for playing.

COINLIBAPI void COINLINKAGE Cbc_setPerturbation ( Cbc_Model model,
int  value 
)

If problem is primal feasible.

COINLIBAPI int COINLINKAGE Cbc_algorithm ( Cbc_Model model  ) 

Current (or last) algorithm.

COINLIBAPI void COINLINKAGE Cbc_setAlgorithm ( Cbc_Model model,
int  value 
)

Set algorithm.

COINLIBAPI double COINLINKAGE Cbc_sumDualInfeasibilities ( Cbc_Model model  ) 

Sum of dual infeasibilities.

COINLIBAPI int COINLINKAGE Cbc_numberDualInfeasibilities ( Cbc_Model model  ) 

Number of dual infeasibilities.

COINLIBAPI double COINLINKAGE Cbc_sumPrimalInfeasibilities ( Cbc_Model model  ) 

Sum of primal infeasibilities.

COINLIBAPI int COINLINKAGE Cbc_numberPrimalInfeasibilities ( Cbc_Model model  ) 

Number of primal infeasibilities.

COINLIBAPI int COINLINKAGE Cbc_saveModel ( Cbc_Model model,
const char *  fileName 
)

Save model to file, returns 0 if success.

This is designed for use outside algorithms so does not save iterating arrays etc. It does not save any messaging information. Does not save scaling values. It does not know about all types of virtual functions.

COINLIBAPI int COINLINKAGE Cbc_restoreModel ( Cbc_Model model,
const char *  fileName 
)

Restore model from file, returns 0 if success, deletes current model.

COINLIBAPI void COINLINKAGE Cbc_checkSolution ( Cbc_Model model  ) 

Just check solution (for external use) - sets sum of infeasibilities etc.

COINLIBAPI int COINLINKAGE Cbc_getNumRows ( Cbc_Model model  ) 

Number of rows.

COINLIBAPI int COINLINKAGE Cbc_getNumCols ( Cbc_Model model  ) 

Number of columns.

COINLIBAPI int COINLINKAGE Cbc_getIterationCount ( Cbc_Model model  ) 

Number of iterations.

COINLIBAPI int COINLINKAGE Cbc_isAbandoned ( Cbc_Model model  ) 

Are there a numerical difficulties?

COINLIBAPI int COINLINKAGE Cbc_isProvenOptimal ( Cbc_Model model  ) 

Is optimality proven?

COINLIBAPI int COINLINKAGE Cbc_isProvenPrimalInfeasible ( Cbc_Model model  ) 

Is primal infeasiblity proven?

COINLIBAPI int COINLINKAGE Cbc_isProvenDualInfeasible ( Cbc_Model model  ) 

Is dual infeasiblity proven?

COINLIBAPI int COINLINKAGE Cbc_isPrimalObjectiveLimitReached ( Cbc_Model model  ) 

Is the given primal objective limit reached?

COINLIBAPI int COINLINKAGE Cbc_isDualObjectiveLimitReached ( Cbc_Model model  ) 

Is the given dual objective limit reached?

COINLIBAPI int COINLINKAGE Cbc_isIterationLimitReached ( Cbc_Model model  ) 

Iteration limit reached?

COINLIBAPI double COINLINKAGE Cbc_getObjSense ( Cbc_Model model  ) 

Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.

COINLIBAPI const double* COINLINKAGE Cbc_getRowActivity ( Cbc_Model model  ) 

Primal row solution.

COINLIBAPI const double* COINLINKAGE Cbc_getColSolution ( Cbc_Model model  ) 

Primal column solution.

COINLIBAPI void COINLINKAGE Cbc_setColSolution ( Cbc_Model model,
const double *  input 
)

Number of rows.

COINLIBAPI const double* COINLINKAGE Cbc_getRowPrice ( Cbc_Model model  ) 

Dual row solution.

COINLIBAPI const double* COINLINKAGE Cbc_getReducedCost ( Cbc_Model model  ) 

Reduced costs.

COINLIBAPI const double* COINLINKAGE Cbc_getRowLower ( Cbc_Model model  ) 

Row lower.

COINLIBAPI const double* COINLINKAGE Cbc_getRowUpper ( Cbc_Model model  ) 

Row upper.

COINLIBAPI const double* COINLINKAGE Cbc_getObjCoefficients ( Cbc_Model model  ) 

Objective.

COINLIBAPI const double* COINLINKAGE Cbc_getColLower ( Cbc_Model model  ) 

Column Lower.

COINLIBAPI const double* COINLINKAGE Cbc_getColUpper ( Cbc_Model model  ) 

Column Upper.

COINLIBAPI double COINLINKAGE Cbc_getObjValue ( Cbc_Model model  ) 

Objective value.

COINLIBAPI void COINLINKAGE Cbc_printModel ( Cbc_Model model,
const char *  argPrefix 
)

Print the model.

COINLIBAPI int COINLINKAGE Cbc_isInteger ( Cbc_Model model,
int  i 
)

Determine whether the variable at location i is integer restricted.

COINLIBAPI double COINLINKAGE Cbc_cpuTime ( Cbc_Model model  ) 

Return CPU time.

COINLIBAPI int COINLINKAGE Cbc_getNodeCount ( Cbc_Model model  ) 

Number of nodes explored in B&B tree.

COINLIBAPI Cbc_Model* COINLINKAGE Cbc_clone ( Cbc_Model model  ) 

Return a copy of this model.

COINLIBAPI Cbc_Model* COINLINKAGE Cbc_setContinuous ( Cbc_Model model,
int  iColumn 
)

Set this the variable to be continuous.

COINLIBAPI void COINLINKAGE Cbc_addSOS_Dense ( Cbc_Model model,
int  numObjects,
const int *  len,
const int **  which,
const double *  weights,
const int  type 
)

Add SOS constraints to the model using dense matrix.

COINLIBAPI void COINLINKAGE Cbc_addSOS_Sparse ( Cbc_Model model,
const int *  rowStarts,
const int *  rowIndices,
const double *  weights,
const int  type 
)

Add SOS constraints to the model using row-order matrix.

COINLIBAPI void COINLINKAGE Cbc_deleteObjects ( Cbc_Model model  ) 

Delete all object information.

COINLIBAPI void COINLINKAGE Cbc_printSolution ( Cbc_Model model  ) 

Print the solution.

COINLIBAPI int COINLINKAGE Cbc_initialDualSolve ( Cbc_Model model  ) 

Dual initial solve.

COINLIBAPI int COINLINKAGE Cbc_initialPrimalSolve ( Cbc_Model model  ) 

Primal initial solve.

COINLIBAPI int COINLINKAGE Cbc_dual ( Cbc_Model model,
int  ifValuesPass 
)

Dual algorithm - see ClpSimplexDual.hpp for method.

COINLIBAPI int COINLINKAGE Cbc_primal ( Cbc_Model model,
int  ifValuesPass 
)

Primal algorithm - see ClpSimplexPrimal.hpp for method.


Generated on Sun Nov 14 14:07:55 2010 for Coin-All by  doxygen 1.4.7