Clp  1.17.8
Typedefs
Clp_C_Interface.h File Reference
#include "Coin_C_defines.h"
+ Include dependency graph for Clp_C_Interface.h:

Go to the source code of this file.

Typedefs

typedef void Clp_Solve
 

Functions

Version info

This is a first "C" interface to Clp.

It has similarities to the OSL V3 interface and only has most common functions

 A Clp library has a version number of the form <major>.<minor>.<release>,
 where each of major, minor, and release are nonnegative integers.
 For a checkout of the Clp stable branch, release is 9999.
 For a checkout of the Clp development branch, major, minor, and release are 9999.
const COINLIBAPI char *COINLINKAGE Clp_Version (void)
 Clp library version number as string. More...
 
COINLIBAPI int COINLINKAGE Clp_VersionMajor (void)
 Major number of Clp library version. More...
 
COINLIBAPI int COINLINKAGE Clp_VersionMinor (void)
 Minor number of Clp library version. More...
 
COINLIBAPI int COINLINKAGE Clp_VersionRelease (void)
 Release number of Clp library version. More...
 
Constructors and destructor

These do not have an exact analogue in C++.

The user does not need to know structure of Clp_Simplex or Clp_Solve.

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

Similarly, for all ClpSolve_* functions there is an exact C++ analogue created by taking the first parameter out, removing the ClpSolve_ from name and applying the method to an object of type ClpSolve.

COINLIBAPI Clp_Simplex *COINLINKAGE Clp_newModel (void)
 Default constructor. More...
 
COINLIBAPI void COINLINKAGE Clp_deleteModel (Clp_Simplex *model)
 Destructor. More...
 
COINLIBAPI Clp_Solve *COINLINKAGE ClpSolve_new ()
 Default constructor. More...
 
COINLIBAPI void COINLINKAGE ClpSolve_delete (Clp_Solve *solve)
 Destructor. More...
 
Load model - loads some stuff and initializes others
COINLIBAPI void COINLINKAGE Clp_loadProblem (Clp_Simplex *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)
 Loads a problem (the constraints on the rows are given by lower and upper bounds). More...
 
COINLIBAPI void COINLINKAGE Clp_loadQuadraticObjective (Clp_Simplex *model, const int numberColumns, const CoinBigIndex *start, const int *column, const double *element)
 
COINLIBAPI int COINLINKAGE Clp_readMps (Clp_Simplex *model, const char *filename, int keepNames, int ignoreErrors)
 Read an mps file from the given filename. More...
 
COINLIBAPI int COINLINKAGE Clp_writeMps (Clp_Simplex *model, const char *filename, int formatType, int numberAcross, double objSense)
 Write an mps file to the given filename. More...
 
COINLIBAPI void COINLINKAGE Clp_copyInIntegerInformation (Clp_Simplex *model, const char *information)
 Copy in integer informations. More...
 
COINLIBAPI void COINLINKAGE Clp_deleteIntegerInformation (Clp_Simplex *model)
 Drop integer informations. More...
 
COINLIBAPI void COINLINKAGE Clp_resize (Clp_Simplex *model, int newNumberRows, int newNumberColumns)
 Resizes rim part of model
More...
 
COINLIBAPI void COINLINKAGE Clp_deleteRows (Clp_Simplex *model, int number, const int *which)
 Deletes rows. More...
 
COINLIBAPI void COINLINKAGE Clp_addRows (Clp_Simplex *model, int number, const double *rowLower, const double *rowUpper, const CoinBigIndex *rowStarts, const int *columns, const double *elements)
 Add rows. More...
 
COINLIBAPI void COINLINKAGE Clp_deleteColumns (Clp_Simplex *model, int number, const int *which)
 Deletes columns. More...
 
COINLIBAPI void COINLINKAGE Clp_addColumns (Clp_Simplex *model, int number, const double *columnLower, const double *columnUpper, const double *objective, const CoinBigIndex *columnStarts, const int *rows, const double *elements)
 Add columns. More...
 
COINLIBAPI void COINLINKAGE Clp_chgRowLower (Clp_Simplex *model, const double *rowLower)
 Change row lower bounds. More...
 
COINLIBAPI void COINLINKAGE Clp_chgRowUpper (Clp_Simplex *model, const double *rowUpper)
 Change row upper bounds. More...
 
COINLIBAPI void COINLINKAGE Clp_chgColumnLower (Clp_Simplex *model, const double *columnLower)
 Change column lower bounds. More...
 
COINLIBAPI void COINLINKAGE Clp_chgColumnUpper (Clp_Simplex *model, const double *columnUpper)
 Change column upper bounds. More...
 
COINLIBAPI void COINLINKAGE Clp_chgObjCoefficients (Clp_Simplex *model, const double *objIn)
 Change objective coefficients. More...
 
COINLIBAPI void COINLINKAGE Clp_dropNames (Clp_Simplex *model)
 Change matrix coefficients. More...
 
COINLIBAPI void COINLINKAGE Clp_copyNames (Clp_Simplex *model, const char *const *rowNames, const char *const *columnNames)
 Copies in names. More...
 
gets and sets - you will find some synonyms at the end of this file
COINLIBAPI int COINLINKAGE Clp_numberRows (Clp_Simplex *model)
 Number of rows. More...
 
COINLIBAPI int COINLINKAGE Clp_numberColumns (Clp_Simplex *model)
 Number of columns. More...
 
COINLIBAPI double COINLINKAGE Clp_primalTolerance (Clp_Simplex *model)
 Primal tolerance to use. More...
 
COINLIBAPI void COINLINKAGE Clp_setPrimalTolerance (Clp_Simplex *model, double value)
 
COINLIBAPI double COINLINKAGE Clp_dualTolerance (Clp_Simplex *model)
 Dual tolerance to use. More...
 
COINLIBAPI void COINLINKAGE Clp_setDualTolerance (Clp_Simplex *model, double value)
 
COINLIBAPI double COINLINKAGE Clp_dualObjectiveLimit (Clp_Simplex *model)
 Dual objective limit. More...
 
COINLIBAPI void COINLINKAGE Clp_setDualObjectiveLimit (Clp_Simplex *model, double value)
 
COINLIBAPI double COINLINKAGE Clp_objectiveOffset (Clp_Simplex *model)
 Objective offset. More...
 
COINLIBAPI void COINLINKAGE Clp_setObjectiveOffset (Clp_Simplex *model, double value)
 
COINLIBAPI void COINLINKAGE Clp_problemName (Clp_Simplex *model, int maxNumberCharacters, char *array)
 Fills in array with problem name
More...
 
COINLIBAPI int COINLINKAGE Clp_setProblemName (Clp_Simplex *model, int maxNumberCharacters, char *array)
 
COINLIBAPI int COINLINKAGE Clp_numberIterations (Clp_Simplex *model)
 Number of iterations. More...
 
COINLIBAPI void COINLINKAGE Clp_setNumberIterations (Clp_Simplex *model, int numberIterations)
 
COINLIBAPI int maximumIterations (Clp_Simplex *model)
 Maximum number of iterations. More...
 
COINLIBAPI void COINLINKAGE Clp_setMaximumIterations (Clp_Simplex *model, int value)
 
COINLIBAPI double COINLINKAGE Clp_maximumSeconds (Clp_Simplex *model)
 Maximum time in seconds (from when set called) More...
 
COINLIBAPI void COINLINKAGE Clp_setMaximumSeconds (Clp_Simplex *model, double value)
 
COINLIBAPI int COINLINKAGE Clp_hitMaximumIterations (Clp_Simplex *model)
 Returns true if hit maximum iterations (or time) More...
 
COINLIBAPI int COINLINKAGE Clp_status (Clp_Simplex *model)
 Status of problem: 0 - optimal 1 - primal infeasible 2 - dual infeasible 3 - stopped on iterations etc 4 - stopped due to errors. More...
 
COINLIBAPI void COINLINKAGE Clp_setProblemStatus (Clp_Simplex *model, int problemStatus)
 Set problem status. More...
 
COINLIBAPI int COINLINKAGE Clp_secondaryStatus (Clp_Simplex *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. More...
 
COINLIBAPI void COINLINKAGE Clp_setSecondaryStatus (Clp_Simplex *model, int status)
 
COINLIBAPI double COINLINKAGE Clp_optimizationDirection (Clp_Simplex *model)
 Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore. More...
 
COINLIBAPI void COINLINKAGE Clp_setOptimizationDirection (Clp_Simplex *model, double value)
 
COINLIBAPI double *COINLINKAGE Clp_primalRowSolution (Clp_Simplex *model)
 Primal row solution. More...
 
COINLIBAPI double *COINLINKAGE Clp_primalColumnSolution (Clp_Simplex *model)
 Primal column solution. More...
 
COINLIBAPI double *COINLINKAGE Clp_dualRowSolution (Clp_Simplex *model)
 Dual row solution. More...
 
COINLIBAPI double *COINLINKAGE Clp_dualColumnSolution (Clp_Simplex *model)
 Reduced costs. More...
 
COINLIBAPI double *COINLINKAGE Clp_rowLower (Clp_Simplex *model)
 Row lower. More...
 
COINLIBAPI double *COINLINKAGE Clp_rowUpper (Clp_Simplex *model)
 Row upper
More...
 
COINLIBAPI double *COINLINKAGE Clp_objective (Clp_Simplex *model)
 Objective. More...
 
COINLIBAPI double *COINLINKAGE Clp_columnLower (Clp_Simplex *model)
 Column Lower. More...
 
COINLIBAPI double *COINLINKAGE Clp_columnUpper (Clp_Simplex *model)
 Column Upper. More...
 
COINLIBAPI CoinBigIndex COINLINKAGE Clp_getNumElements (Clp_Simplex *model)
 Number of elements in matrix. More...
 
const COINLIBAPI CoinBigIndex *COINLINKAGE Clp_getVectorStarts (Clp_Simplex *model)
 
const COINLIBAPI int *COINLINKAGE Clp_getIndices (Clp_Simplex *model)
 
const COINLIBAPI int *COINLINKAGE Clp_getVectorLengths (Clp_Simplex *model)
 
const COINLIBAPI double *COINLINKAGE Clp_getElements (Clp_Simplex *model)
 
COINLIBAPI double COINLINKAGE Clp_objectiveValue (Clp_Simplex *model)
 Objective value. More...
 
COINLIBAPI char *COINLINKAGE Clp_integerInformation (Clp_Simplex *model)
 Integer information. More...
 
COINLIBAPI double *COINLINKAGE Clp_infeasibilityRay (Clp_Simplex *model)
 Gives Infeasibility ray. More...
 
COINLIBAPI double *COINLINKAGE Clp_unboundedRay (Clp_Simplex *model)
 Gives ray in which the problem is unbounded. More...
 
COINLIBAPI void COINLINKAGE Clp_freeRay (Clp_Simplex *model, double *ray)
 Frees a infeasibility or unbounded ray. More...
 
COINLIBAPI int COINLINKAGE Clp_statusExists (Clp_Simplex *model)
 See if status array exists (partly for OsiClp) More...
 
COINLIBAPI unsigned char *COINLINKAGE Clp_statusArray (Clp_Simplex *model)
 Return address of status array (char[numberRows+numberColumns]) More...
 
COINLIBAPI void COINLINKAGE Clp_copyinStatus (Clp_Simplex *model, const unsigned char *statusArray)
 Copy in status vector. More...
 
COINLIBAPI int COINLINKAGE Clp_getColumnStatus (Clp_Simplex *model, int sequence)
 
COINLIBAPI int COINLINKAGE Clp_getRowStatus (Clp_Simplex *model, int sequence)
 
COINLIBAPI void COINLINKAGE Clp_setColumnStatus (Clp_Simplex *model, int sequence, int value)
 
COINLIBAPI void COINLINKAGE Clp_setRowStatus (Clp_Simplex *model, int sequence, int value)
 
COINLIBAPI void COINLINKAGE Clp_setUserPointer (Clp_Simplex *model, void *pointer)
 User pointer for whatever reason. More...
 
COINLIBAPI void *COINLINKAGE Clp_getUserPointer (Clp_Simplex *model)
 
Message handling. Call backs are handled by ONE function
COINLIBAPI void COINLINKAGE Clp_registerCallBack (Clp_Simplex *model, clp_callback userCallBack)
 Pass in Callback function. More...
 
COINLIBAPI void COINLINKAGE Clp_clearCallBack (Clp_Simplex *model)
 Unset Callback function. More...
 
COINLIBAPI void COINLINKAGE Clp_setLogLevel (Clp_Simplex *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. More...
 
COINLIBAPI int COINLINKAGE Clp_logLevel (Clp_Simplex *model)
 
COINLIBAPI int COINLINKAGE Clp_lengthNames (Clp_Simplex *model)
 length of names (0 means no names0 More...
 
COINLIBAPI void COINLINKAGE Clp_rowName (Clp_Simplex *model, int iRow, char *name)
 Fill in array (at least lengthNames+1 long) with a row name. More...
 
COINLIBAPI void COINLINKAGE Clp_columnName (Clp_Simplex *model, int iColumn, char *name)
 Fill in array (at least lengthNames+1 long) with a column name. More...
 
COINLIBAPI void COINLINKAGE Clp_setRowName (Clp_Simplex *model, int iRow, char *name)
 Set row name - Nice if they are short - 8 chars or less I think. More...
 
COINLIBAPI void COINLINKAGE Clp_setColumnName (Clp_Simplex *model, int iColumn, char *name)
 Set column name - Nice if they are short - 8 chars or less I think. More...
 
Functions most useful to user
COINLIBAPI int COINLINKAGE Clp_initialSolve (Clp_Simplex *model)
 General solve algorithm which can do presolve. More...
 
COINLIBAPI int COINLINKAGE Clp_initialSolveWithOptions (Clp_Simplex *model, Clp_Solve *)
 Pass solve options. More...
 
COINLIBAPI int COINLINKAGE Clp_initialDualSolve (Clp_Simplex *model)
 Dual initial solve. More...
 
COINLIBAPI int COINLINKAGE Clp_initialPrimalSolve (Clp_Simplex *model)
 Primal initial solve. More...
 
COINLIBAPI int COINLINKAGE Clp_initialBarrierSolve (Clp_Simplex *model)
 Barrier initial solve. More...
 
COINLIBAPI int COINLINKAGE Clp_initialBarrierNoCrossSolve (Clp_Simplex *model)
 Barrier initial solve, no crossover. More...
 
COINLIBAPI int COINLINKAGE Clp_dual (Clp_Simplex *model, int ifValuesPass)
 Dual algorithm - see ClpSimplexDual.hpp for method. More...
 
COINLIBAPI int COINLINKAGE Clp_primal (Clp_Simplex *model, int ifValuesPass)
 Primal algorithm - see ClpSimplexPrimal.hpp for method. More...
 
COINLIBAPI void COINLINKAGE Clp_idiot (Clp_Simplex *model, int tryhard)
 Solve the problem with the idiot code. More...
 
COINLIBAPI void COINLINKAGE Clp_scaling (Clp_Simplex *model, int mode)
 Sets or unsets scaling, 0 -off, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic(later) More...
 
COINLIBAPI int COINLINKAGE Clp_scalingFlag (Clp_Simplex *model)
 Gets scalingFlag. More...
 
COINLIBAPI int COINLINKAGE Clp_crash (Clp_Simplex *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. More...
 
most useful gets and sets
COINLIBAPI int COINLINKAGE Clp_primalFeasible (Clp_Simplex *model)
 If problem is primal feasible. More...
 
COINLIBAPI int COINLINKAGE Clp_dualFeasible (Clp_Simplex *model)
 If problem is dual feasible. More...
 
COINLIBAPI double COINLINKAGE Clp_dualBound (Clp_Simplex *model)
 Dual bound. More...
 
COINLIBAPI void COINLINKAGE Clp_setDualBound (Clp_Simplex *model, double value)
 
COINLIBAPI double COINLINKAGE Clp_infeasibilityCost (Clp_Simplex *model)
 Infeasibility cost. More...
 
COINLIBAPI void COINLINKAGE Clp_setInfeasibilityCost (Clp_Simplex *model, double value)
 
COINLIBAPI int COINLINKAGE Clp_perturbation (Clp_Simplex *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. More...
 
COINLIBAPI void COINLINKAGE Clp_setPerturbation (Clp_Simplex *model, int value)
 
COINLIBAPI int COINLINKAGE Clp_algorithm (Clp_Simplex *model)
 Current (or last) algorithm. More...
 
COINLIBAPI void COINLINKAGE Clp_setAlgorithm (Clp_Simplex *model, int value)
 Set algorithm. More...
 
COINLIBAPI double COINLINKAGE Clp_sumDualInfeasibilities (Clp_Simplex *model)
 Sum of dual infeasibilities. More...
 
COINLIBAPI int COINLINKAGE Clp_numberDualInfeasibilities (Clp_Simplex *model)
 Number of dual infeasibilities. More...
 
COINLIBAPI double COINLINKAGE Clp_sumPrimalInfeasibilities (Clp_Simplex *model)
 Sum of primal infeasibilities. More...
 
COINLIBAPI int COINLINKAGE Clp_numberPrimalInfeasibilities (Clp_Simplex *model)
 Number of primal infeasibilities. More...
 
COINLIBAPI int COINLINKAGE Clp_saveModel (Clp_Simplex *model, const char *fileName)
 Save model to file, returns 0 if success. More...
 
COINLIBAPI int COINLINKAGE Clp_restoreModel (Clp_Simplex *model, const char *fileName)
 Restore model from file, returns 0 if success, deletes current model. More...
 
COINLIBAPI void COINLINKAGE Clp_checkSolution (Clp_Simplex *model)
 Just check solution (for external use) - sets sum of infeasibilities etc. More...
 
gets and sets - some synonyms
COINLIBAPI int COINLINKAGE Clp_getNumRows (Clp_Simplex *model)
 Number of rows. More...
 
COINLIBAPI int COINLINKAGE Clp_getNumCols (Clp_Simplex *model)
 Number of columns. More...
 
COINLIBAPI int COINLINKAGE Clp_getIterationCount (Clp_Simplex *model)
 Number of iterations. More...
 
COINLIBAPI int COINLINKAGE Clp_isAbandoned (Clp_Simplex *model)
 Are there a numerical difficulties? More...
 
COINLIBAPI int COINLINKAGE Clp_isProvenOptimal (Clp_Simplex *model)
 Is optimality proven? More...
 
COINLIBAPI int COINLINKAGE Clp_isProvenPrimalInfeasible (Clp_Simplex *model)
 Is primal infeasiblity proven? More...
 
COINLIBAPI int COINLINKAGE Clp_isProvenDualInfeasible (Clp_Simplex *model)
 Is dual infeasiblity proven? More...
 
COINLIBAPI int COINLINKAGE Clp_isPrimalObjectiveLimitReached (Clp_Simplex *model)
 Is the given primal objective limit reached? More...
 
COINLIBAPI int COINLINKAGE Clp_isDualObjectiveLimitReached (Clp_Simplex *model)
 Is the given dual objective limit reached? More...
 
COINLIBAPI int COINLINKAGE Clp_isIterationLimitReached (Clp_Simplex *model)
 Iteration limit reached? More...
 
COINLIBAPI double COINLINKAGE Clp_getObjSense (Clp_Simplex *model)
 Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore. More...
 
COINLIBAPI void COINLINKAGE Clp_setObjSense (Clp_Simplex *model, double objsen)
 Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getRowActivity (Clp_Simplex *model)
 Primal row solution. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getColSolution (Clp_Simplex *model)
 Primal column solution. More...
 
COINLIBAPI void COINLINKAGE Clp_setColSolution (Clp_Simplex *model, const double *input)
 
const COINLIBAPI double *COINLINKAGE Clp_getRowPrice (Clp_Simplex *model)
 Dual row solution. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getReducedCost (Clp_Simplex *model)
 Reduced costs. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getRowLower (Clp_Simplex *model)
 Row lower. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getRowUpper (Clp_Simplex *model)
 Row upper
More...
 
const COINLIBAPI double *COINLINKAGE Clp_getObjCoefficients (Clp_Simplex *model)
 Objective. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getColLower (Clp_Simplex *model)
 Column Lower. More...
 
const COINLIBAPI double *COINLINKAGE Clp_getColUpper (Clp_Simplex *model)
 Column Upper. More...
 
COINLIBAPI double COINLINKAGE Clp_getObjValue (Clp_Simplex *model)
 Objective value. More...
 
COINLIBAPI void COINLINKAGE Clp_printModel (Clp_Simplex *model, const char *prefix)
 Print model for debugging purposes. More...
 
COINLIBAPI double COINLINKAGE Clp_getSmallElementValue (Clp_Simplex *model)
 
COINLIBAPI void COINLINKAGE Clp_setSmallElementValue (Clp_Simplex *model, double value)
 
Get and set ClpSolve options
COINLIBAPI void COINLINKAGE ClpSolve_setSpecialOption (Clp_Solve *, int which, int value, int extraInfo)
 
COINLIBAPI int COINLINKAGE ClpSolve_getSpecialOption (Clp_Solve *, int which)
 
COINLIBAPI void COINLINKAGE ClpSolve_setSolveType (Clp_Solve *, int method, int extraInfo)
 method: (see ClpSolve::SolveType) 0 - dual simplex 1 - primal simplex 2 - primal or sprint 3 - barrier 4 - barrier no crossover 5 - automatic 6 - not implemented – pass extraInfo == -1 for default behavior More...
 
COINLIBAPI int COINLINKAGE ClpSolve_getSolveType (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setPresolveType (Clp_Solve *, int amount, int extraInfo)
 amount: (see ClpSolve::PresolveType) 0 - presolve on 1 - presolve off 2 - presolve number 3 - presolve number cost – pass extraInfo == -1 for default behavior More...
 
COINLIBAPI int COINLINKAGE ClpSolve_getPresolveType (Clp_Solve *)
 
COINLIBAPI int COINLINKAGE ClpSolve_getPresolvePasses (Clp_Solve *)
 
COINLIBAPI int COINLINKAGE ClpSolve_getExtraInfo (Clp_Solve *, int which)
 
COINLIBAPI void COINLINKAGE ClpSolve_setInfeasibleReturn (Clp_Solve *, int trueFalse)
 
COINLIBAPI int COINLINKAGE ClpSolve_infeasibleReturn (Clp_Solve *)
 
COINLIBAPI int COINLINKAGE ClpSolve_doDual (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoDual (Clp_Solve *, int doDual)
 
COINLIBAPI int COINLINKAGE ClpSolve_doSingleton (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoSingleton (Clp_Solve *, int doSingleton)
 
COINLIBAPI int COINLINKAGE ClpSolve_doDoubleton (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoDoubleton (Clp_Solve *, int doDoubleton)
 
COINLIBAPI int COINLINKAGE ClpSolve_doTripleton (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoTripleton (Clp_Solve *, int doTripleton)
 
COINLIBAPI int COINLINKAGE ClpSolve_doTighten (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoTighten (Clp_Solve *, int doTighten)
 
COINLIBAPI int COINLINKAGE ClpSolve_doForcing (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoForcing (Clp_Solve *, int doForcing)
 
COINLIBAPI int COINLINKAGE ClpSolve_doImpliedFree (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoImpliedFree (Clp_Solve *, int doImpliedFree)
 
COINLIBAPI int COINLINKAGE ClpSolve_doDupcol (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoDupcol (Clp_Solve *, int doDupcol)
 
COINLIBAPI int COINLINKAGE ClpSolve_doDuprow (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoDuprow (Clp_Solve *, int doDuprow)
 
COINLIBAPI int COINLINKAGE ClpSolve_doSingletonColumn (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setDoSingletonColumn (Clp_Solve *, int doSingleton)
 
COINLIBAPI int COINLINKAGE ClpSolve_presolveActions (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setPresolveActions (Clp_Solve *, int action)
 
COINLIBAPI int COINLINKAGE ClpSolve_substitution (Clp_Solve *)
 
COINLIBAPI void COINLINKAGE ClpSolve_setSubstitution (Clp_Solve *, int value)
 

Typedef Documentation

◆ Clp_Solve

typedef void Clp_Solve

Definition at line 28 of file Clp_C_Interface.h.

Function Documentation

◆ Clp_Version()

const COINLIBAPI char* COINLINKAGE Clp_Version ( void  )

Clp library version number as string.

◆ Clp_VersionMajor()

COINLIBAPI int COINLINKAGE Clp_VersionMajor ( void  )

Major number of Clp library version.

◆ Clp_VersionMinor()

COINLIBAPI int COINLINKAGE Clp_VersionMinor ( void  )

Minor number of Clp library version.

◆ Clp_VersionRelease()

COINLIBAPI int COINLINKAGE Clp_VersionRelease ( void  )

Release number of Clp library version.

◆ Clp_newModel()

COINLIBAPI Clp_Simplex* COINLINKAGE Clp_newModel ( void  )

Default constructor.

◆ Clp_deleteModel()

COINLIBAPI void COINLINKAGE Clp_deleteModel ( Clp_Simplex *  model)

Destructor.

◆ ClpSolve_new()

COINLIBAPI Clp_Solve* COINLINKAGE ClpSolve_new ( )

Default constructor.

◆ ClpSolve_delete()

COINLIBAPI void COINLINKAGE ClpSolve_delete ( Clp_Solve solve)

Destructor.

◆ Clp_loadProblem()

COINLIBAPI void COINLINKAGE Clp_loadProblem ( Clp_Simplex *  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 
)

Loads a problem (the constraints on the rows are given by lower and upper bounds).

If a pointer is NULL then the following values are the default:

  • colub: all columns have upper bound infinity
  • collb: all columns have lower bound 0
  • rowub: all rows have upper bound infinity
  • rowlb: all rows have lower bound -infinity
  • obj: all variables have 0 objective coefficient

Just like the other loadProblem() method except that the matrix is given in a standard column major ordered format (without gaps).

◆ Clp_loadQuadraticObjective()

COINLIBAPI void COINLINKAGE Clp_loadQuadraticObjective ( Clp_Simplex *  model,
const int  numberColumns,
const CoinBigIndex *  start,
const int *  column,
const double *  element 
)

◆ Clp_readMps()

COINLIBAPI int COINLINKAGE Clp_readMps ( Clp_Simplex *  model,
const char *  filename,
int  keepNames,
int  ignoreErrors 
)

Read an mps file from the given filename.

◆ Clp_writeMps()

COINLIBAPI int COINLINKAGE Clp_writeMps ( Clp_Simplex *  model,
const char *  filename,
int  formatType,
int  numberAcross,
double  objSense 
)

Write an mps file to the given filename.

Format type is 0 = normal, 1 = extra or 2 = hex. Number across is 1 or 2. Use objSense = -1D to flip the objective function around.

◆ Clp_copyInIntegerInformation()

COINLIBAPI void COINLINKAGE Clp_copyInIntegerInformation ( Clp_Simplex *  model,
const char *  information 
)

Copy in integer informations.

◆ Clp_deleteIntegerInformation()

COINLIBAPI void COINLINKAGE Clp_deleteIntegerInformation ( Clp_Simplex *  model)

Drop integer informations.

◆ Clp_resize()

COINLIBAPI void COINLINKAGE Clp_resize ( Clp_Simplex *  model,
int  newNumberRows,
int  newNumberColumns 
)

Resizes rim part of model

◆ Clp_deleteRows()

COINLIBAPI void COINLINKAGE Clp_deleteRows ( Clp_Simplex *  model,
int  number,
const int *  which 
)

Deletes rows.

◆ Clp_addRows()

COINLIBAPI void COINLINKAGE Clp_addRows ( Clp_Simplex *  model,
int  number,
const double *  rowLower,
const double *  rowUpper,
const CoinBigIndex *  rowStarts,
const int *  columns,
const double *  elements 
)

Add rows.

◆ Clp_deleteColumns()

COINLIBAPI void COINLINKAGE Clp_deleteColumns ( Clp_Simplex *  model,
int  number,
const int *  which 
)

Deletes columns.

◆ Clp_addColumns()

COINLIBAPI void COINLINKAGE Clp_addColumns ( Clp_Simplex *  model,
int  number,
const double *  columnLower,
const double *  columnUpper,
const double *  objective,
const CoinBigIndex *  columnStarts,
const int *  rows,
const double *  elements 
)

Add columns.

◆ Clp_chgRowLower()

COINLIBAPI void COINLINKAGE Clp_chgRowLower ( Clp_Simplex *  model,
const double *  rowLower 
)

Change row lower bounds.

◆ Clp_chgRowUpper()

COINLIBAPI void COINLINKAGE Clp_chgRowUpper ( Clp_Simplex *  model,
const double *  rowUpper 
)

Change row upper bounds.

◆ Clp_chgColumnLower()

COINLIBAPI void COINLINKAGE Clp_chgColumnLower ( Clp_Simplex *  model,
const double *  columnLower 
)

Change column lower bounds.

◆ Clp_chgColumnUpper()

COINLIBAPI void COINLINKAGE Clp_chgColumnUpper ( Clp_Simplex *  model,
const double *  columnUpper 
)

Change column upper bounds.

◆ Clp_chgObjCoefficients()

COINLIBAPI void COINLINKAGE Clp_chgObjCoefficients ( Clp_Simplex *  model,
const double *  objIn 
)

Change objective coefficients.

◆ Clp_dropNames()

COINLIBAPI void COINLINKAGE Clp_dropNames ( Clp_Simplex *  model)

Change matrix coefficients.

Note
Clp 1.18 will change the type of
Parameters
keepZeroto int. Drops names - makes lengthnames 0 and names empty

◆ Clp_copyNames()

COINLIBAPI void COINLINKAGE Clp_copyNames ( Clp_Simplex *  model,
const char *const *  rowNames,
const char *const *  columnNames 
)

Copies in names.

◆ Clp_numberRows()

COINLIBAPI int COINLINKAGE Clp_numberRows ( Clp_Simplex *  model)

Number of rows.

◆ Clp_numberColumns()

COINLIBAPI int COINLINKAGE Clp_numberColumns ( Clp_Simplex *  model)

Number of columns.

◆ Clp_primalTolerance()

COINLIBAPI double COINLINKAGE Clp_primalTolerance ( Clp_Simplex *  model)

Primal tolerance to use.

◆ Clp_setPrimalTolerance()

COINLIBAPI void COINLINKAGE Clp_setPrimalTolerance ( Clp_Simplex *  model,
double  value 
)

◆ Clp_dualTolerance()

COINLIBAPI double COINLINKAGE Clp_dualTolerance ( Clp_Simplex *  model)

Dual tolerance to use.

◆ Clp_setDualTolerance()

COINLIBAPI void COINLINKAGE Clp_setDualTolerance ( Clp_Simplex *  model,
double  value 
)

◆ Clp_dualObjectiveLimit()

COINLIBAPI double COINLINKAGE Clp_dualObjectiveLimit ( Clp_Simplex *  model)

Dual objective limit.

◆ Clp_setDualObjectiveLimit()

COINLIBAPI void COINLINKAGE Clp_setDualObjectiveLimit ( Clp_Simplex *  model,
double  value 
)

◆ Clp_objectiveOffset()

COINLIBAPI double COINLINKAGE Clp_objectiveOffset ( Clp_Simplex *  model)

Objective offset.

◆ Clp_setObjectiveOffset()

COINLIBAPI void COINLINKAGE Clp_setObjectiveOffset ( Clp_Simplex *  model,
double  value 
)

◆ Clp_problemName()

COINLIBAPI void COINLINKAGE Clp_problemName ( Clp_Simplex *  model,
int  maxNumberCharacters,
char *  array 
)

Fills in array with problem name

◆ Clp_setProblemName()

COINLIBAPI int COINLINKAGE Clp_setProblemName ( Clp_Simplex *  model,
int  maxNumberCharacters,
char *  array 
)

◆ Clp_numberIterations()

COINLIBAPI int COINLINKAGE Clp_numberIterations ( Clp_Simplex *  model)

Number of iterations.

◆ Clp_setNumberIterations()

COINLIBAPI void COINLINKAGE Clp_setNumberIterations ( Clp_Simplex *  model,
int  numberIterations 
)

◆ maximumIterations()

COINLIBAPI int maximumIterations ( Clp_Simplex *  model)

Maximum number of iterations.

◆ Clp_setMaximumIterations()

COINLIBAPI void COINLINKAGE Clp_setMaximumIterations ( Clp_Simplex *  model,
int  value 
)

◆ Clp_maximumSeconds()

COINLIBAPI double COINLINKAGE Clp_maximumSeconds ( Clp_Simplex *  model)

Maximum time in seconds (from when set called)

◆ Clp_setMaximumSeconds()

COINLIBAPI void COINLINKAGE Clp_setMaximumSeconds ( Clp_Simplex *  model,
double  value 
)

◆ Clp_hitMaximumIterations()

COINLIBAPI int COINLINKAGE Clp_hitMaximumIterations ( Clp_Simplex *  model)

Returns true if hit maximum iterations (or time)

◆ Clp_status()

COINLIBAPI int COINLINKAGE Clp_status ( Clp_Simplex *  model)

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

◆ Clp_setProblemStatus()

COINLIBAPI void COINLINKAGE Clp_setProblemStatus ( Clp_Simplex *  model,
int  problemStatus 
)

Set problem status.

◆ Clp_secondaryStatus()

COINLIBAPI int COINLINKAGE Clp_secondaryStatus ( Clp_Simplex *  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.

◆ Clp_setSecondaryStatus()

COINLIBAPI void COINLINKAGE Clp_setSecondaryStatus ( Clp_Simplex *  model,
int  status 
)

◆ Clp_optimizationDirection()

COINLIBAPI double COINLINKAGE Clp_optimizationDirection ( Clp_Simplex *  model)

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

◆ Clp_setOptimizationDirection()

COINLIBAPI void COINLINKAGE Clp_setOptimizationDirection ( Clp_Simplex *  model,
double  value 
)

◆ Clp_primalRowSolution()

COINLIBAPI double* COINLINKAGE Clp_primalRowSolution ( Clp_Simplex *  model)

Primal row solution.

◆ Clp_primalColumnSolution()

COINLIBAPI double* COINLINKAGE Clp_primalColumnSolution ( Clp_Simplex *  model)

Primal column solution.

◆ Clp_dualRowSolution()

COINLIBAPI double* COINLINKAGE Clp_dualRowSolution ( Clp_Simplex *  model)

Dual row solution.

◆ Clp_dualColumnSolution()

COINLIBAPI double* COINLINKAGE Clp_dualColumnSolution ( Clp_Simplex *  model)

Reduced costs.

◆ Clp_rowLower()

COINLIBAPI double* COINLINKAGE Clp_rowLower ( Clp_Simplex *  model)

Row lower.

◆ Clp_rowUpper()

COINLIBAPI double* COINLINKAGE Clp_rowUpper ( Clp_Simplex *  model)

Row upper

◆ Clp_objective()

COINLIBAPI double* COINLINKAGE Clp_objective ( Clp_Simplex *  model)

Objective.

◆ Clp_columnLower()

COINLIBAPI double* COINLINKAGE Clp_columnLower ( Clp_Simplex *  model)

Column Lower.

◆ Clp_columnUpper()

COINLIBAPI double* COINLINKAGE Clp_columnUpper ( Clp_Simplex *  model)

Column Upper.

◆ Clp_getNumElements()

COINLIBAPI CoinBigIndex COINLINKAGE Clp_getNumElements ( Clp_Simplex *  model)

Number of elements in matrix.

◆ Clp_getVectorStarts()

const COINLIBAPI CoinBigIndex* COINLINKAGE Clp_getVectorStarts ( Clp_Simplex *  model)

◆ Clp_getIndices()

const COINLIBAPI int* COINLINKAGE Clp_getIndices ( Clp_Simplex *  model)

◆ Clp_getVectorLengths()

const COINLIBAPI int* COINLINKAGE Clp_getVectorLengths ( Clp_Simplex *  model)

◆ Clp_getElements()

const COINLIBAPI double* COINLINKAGE Clp_getElements ( Clp_Simplex *  model)

◆ Clp_objectiveValue()

COINLIBAPI double COINLINKAGE Clp_objectiveValue ( Clp_Simplex *  model)

Objective value.

◆ Clp_integerInformation()

COINLIBAPI char* COINLINKAGE Clp_integerInformation ( Clp_Simplex *  model)

Integer information.

◆ Clp_infeasibilityRay()

COINLIBAPI double* COINLINKAGE Clp_infeasibilityRay ( Clp_Simplex *  model)

Gives Infeasibility ray.

Use Clp_freeRay to free the returned array.

@return infeasibility ray, or NULL returned if none/wrong.

◆ Clp_unboundedRay()

COINLIBAPI double* COINLINKAGE Clp_unboundedRay ( Clp_Simplex *  model)

Gives ray in which the problem is unbounded.

Use Clp_freeRay to free the returned array.

@return unbounded ray, or NULL returned if none/wrong.

◆ Clp_freeRay()

COINLIBAPI void COINLINKAGE Clp_freeRay ( Clp_Simplex *  model,
double *  ray 
)

Frees a infeasibility or unbounded ray.

◆ Clp_statusExists()

COINLIBAPI int COINLINKAGE Clp_statusExists ( Clp_Simplex *  model)

See if status array exists (partly for OsiClp)

◆ Clp_statusArray()

COINLIBAPI unsigned char* COINLINKAGE Clp_statusArray ( Clp_Simplex *  model)

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

◆ Clp_copyinStatus()

COINLIBAPI void COINLINKAGE Clp_copyinStatus ( Clp_Simplex *  model,
const unsigned char *  statusArray 
)

Copy in status vector.

◆ Clp_getColumnStatus()

COINLIBAPI int COINLINKAGE Clp_getColumnStatus ( Clp_Simplex *  model,
int  sequence 
)

◆ Clp_getRowStatus()

COINLIBAPI int COINLINKAGE Clp_getRowStatus ( Clp_Simplex *  model,
int  sequence 
)

◆ Clp_setColumnStatus()

COINLIBAPI void COINLINKAGE Clp_setColumnStatus ( Clp_Simplex *  model,
int  sequence,
int  value 
)

◆ Clp_setRowStatus()

COINLIBAPI void COINLINKAGE Clp_setRowStatus ( Clp_Simplex *  model,
int  sequence,
int  value 
)

◆ Clp_setUserPointer()

COINLIBAPI void COINLINKAGE Clp_setUserPointer ( Clp_Simplex *  model,
void *  pointer 
)

User pointer for whatever reason.

◆ Clp_getUserPointer()

COINLIBAPI void* COINLINKAGE Clp_getUserPointer ( Clp_Simplex *  model)

◆ Clp_registerCallBack()

COINLIBAPI void COINLINKAGE Clp_registerCallBack ( Clp_Simplex *  model,
clp_callback  userCallBack 
)

Pass in Callback function.

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

◆ Clp_clearCallBack()

COINLIBAPI void COINLINKAGE Clp_clearCallBack ( Clp_Simplex *  model)

Unset Callback function.

◆ Clp_setLogLevel()

COINLIBAPI void COINLINKAGE Clp_setLogLevel ( Clp_Simplex *  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.

◆ Clp_logLevel()

COINLIBAPI int COINLINKAGE Clp_logLevel ( Clp_Simplex *  model)

◆ Clp_lengthNames()

COINLIBAPI int COINLINKAGE Clp_lengthNames ( Clp_Simplex *  model)

length of names (0 means no names0

◆ Clp_rowName()

COINLIBAPI void COINLINKAGE Clp_rowName ( Clp_Simplex *  model,
int  iRow,
char *  name 
)

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

◆ Clp_columnName()

COINLIBAPI void COINLINKAGE Clp_columnName ( Clp_Simplex *  model,
int  iColumn,
char *  name 
)

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

◆ Clp_setRowName()

COINLIBAPI void COINLINKAGE Clp_setRowName ( Clp_Simplex *  model,
int  iRow,
char *  name 
)

Set row name - Nice if they are short - 8 chars or less I think.

◆ Clp_setColumnName()

COINLIBAPI void COINLINKAGE Clp_setColumnName ( Clp_Simplex *  model,
int  iColumn,
char *  name 
)

Set column name - Nice if they are short - 8 chars or less I think.

◆ Clp_initialSolve()

COINLIBAPI int COINLINKAGE Clp_initialSolve ( Clp_Simplex *  model)

General solve algorithm which can do presolve.

See ClpSolve.hpp for options

◆ Clp_initialSolveWithOptions()

COINLIBAPI int COINLINKAGE Clp_initialSolveWithOptions ( Clp_Simplex *  model,
Clp_Solve  
)

Pass solve options.

(Exception to direct analogue rule)

◆ Clp_initialDualSolve()

COINLIBAPI int COINLINKAGE Clp_initialDualSolve ( Clp_Simplex *  model)

Dual initial solve.

◆ Clp_initialPrimalSolve()

COINLIBAPI int COINLINKAGE Clp_initialPrimalSolve ( Clp_Simplex *  model)

Primal initial solve.

◆ Clp_initialBarrierSolve()

COINLIBAPI int COINLINKAGE Clp_initialBarrierSolve ( Clp_Simplex *  model)

Barrier initial solve.

◆ Clp_initialBarrierNoCrossSolve()

COINLIBAPI int COINLINKAGE Clp_initialBarrierNoCrossSolve ( Clp_Simplex *  model)

Barrier initial solve, no crossover.

◆ Clp_dual()

COINLIBAPI int COINLINKAGE Clp_dual ( Clp_Simplex *  model,
int  ifValuesPass 
)

Dual algorithm - see ClpSimplexDual.hpp for method.

◆ Clp_primal()

COINLIBAPI int COINLINKAGE Clp_primal ( Clp_Simplex *  model,
int  ifValuesPass 
)

Primal algorithm - see ClpSimplexPrimal.hpp for method.

◆ Clp_idiot()

COINLIBAPI void COINLINKAGE Clp_idiot ( Clp_Simplex *  model,
int  tryhard 
)

Solve the problem with the idiot code.

◆ Clp_scaling()

COINLIBAPI void COINLINKAGE Clp_scaling ( Clp_Simplex *  model,
int  mode 
)

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

◆ Clp_scalingFlag()

COINLIBAPI int COINLINKAGE Clp_scalingFlag ( Clp_Simplex *  model)

Gets scalingFlag.

◆ Clp_crash()

COINLIBAPI int COINLINKAGE Clp_crash ( Clp_Simplex *  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

◆ Clp_primalFeasible()

COINLIBAPI int COINLINKAGE Clp_primalFeasible ( Clp_Simplex *  model)

If problem is primal feasible.

◆ Clp_dualFeasible()

COINLIBAPI int COINLINKAGE Clp_dualFeasible ( Clp_Simplex *  model)

If problem is dual feasible.

◆ Clp_dualBound()

COINLIBAPI double COINLINKAGE Clp_dualBound ( Clp_Simplex *  model)

Dual bound.

◆ Clp_setDualBound()

COINLIBAPI void COINLINKAGE Clp_setDualBound ( Clp_Simplex *  model,
double  value 
)

◆ Clp_infeasibilityCost()

COINLIBAPI double COINLINKAGE Clp_infeasibilityCost ( Clp_Simplex *  model)

Infeasibility cost.

◆ Clp_setInfeasibilityCost()

COINLIBAPI void COINLINKAGE Clp_setInfeasibilityCost ( Clp_Simplex *  model,
double  value 
)

◆ Clp_perturbation()

COINLIBAPI int COINLINKAGE Clp_perturbation ( Clp_Simplex *  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.

◆ Clp_setPerturbation()

COINLIBAPI void COINLINKAGE Clp_setPerturbation ( Clp_Simplex *  model,
int  value 
)

◆ Clp_algorithm()

COINLIBAPI int COINLINKAGE Clp_algorithm ( Clp_Simplex *  model)

Current (or last) algorithm.

◆ Clp_setAlgorithm()

COINLIBAPI void COINLINKAGE Clp_setAlgorithm ( Clp_Simplex *  model,
int  value 
)

Set algorithm.

◆ Clp_sumDualInfeasibilities()

COINLIBAPI double COINLINKAGE Clp_sumDualInfeasibilities ( Clp_Simplex *  model)

Sum of dual infeasibilities.

◆ Clp_numberDualInfeasibilities()

COINLIBAPI int COINLINKAGE Clp_numberDualInfeasibilities ( Clp_Simplex *  model)

Number of dual infeasibilities.

◆ Clp_sumPrimalInfeasibilities()

COINLIBAPI double COINLINKAGE Clp_sumPrimalInfeasibilities ( Clp_Simplex *  model)

Sum of primal infeasibilities.

◆ Clp_numberPrimalInfeasibilities()

COINLIBAPI int COINLINKAGE Clp_numberPrimalInfeasibilities ( Clp_Simplex *  model)

Number of primal infeasibilities.

◆ Clp_saveModel()

COINLIBAPI int COINLINKAGE Clp_saveModel ( Clp_Simplex *  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.

◆ Clp_restoreModel()

COINLIBAPI int COINLINKAGE Clp_restoreModel ( Clp_Simplex *  model,
const char *  fileName 
)

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

◆ Clp_checkSolution()

COINLIBAPI void COINLINKAGE Clp_checkSolution ( Clp_Simplex *  model)

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

◆ Clp_getNumRows()

COINLIBAPI int COINLINKAGE Clp_getNumRows ( Clp_Simplex *  model)

Number of rows.

◆ Clp_getNumCols()

COINLIBAPI int COINLINKAGE Clp_getNumCols ( Clp_Simplex *  model)

Number of columns.

◆ Clp_getIterationCount()

COINLIBAPI int COINLINKAGE Clp_getIterationCount ( Clp_Simplex *  model)

Number of iterations.

◆ Clp_isAbandoned()

COINLIBAPI int COINLINKAGE Clp_isAbandoned ( Clp_Simplex *  model)

Are there a numerical difficulties?

◆ Clp_isProvenOptimal()

COINLIBAPI int COINLINKAGE Clp_isProvenOptimal ( Clp_Simplex *  model)

Is optimality proven?

◆ Clp_isProvenPrimalInfeasible()

COINLIBAPI int COINLINKAGE Clp_isProvenPrimalInfeasible ( Clp_Simplex *  model)

Is primal infeasiblity proven?

◆ Clp_isProvenDualInfeasible()

COINLIBAPI int COINLINKAGE Clp_isProvenDualInfeasible ( Clp_Simplex *  model)

Is dual infeasiblity proven?

◆ Clp_isPrimalObjectiveLimitReached()

COINLIBAPI int COINLINKAGE Clp_isPrimalObjectiveLimitReached ( Clp_Simplex *  model)

Is the given primal objective limit reached?

◆ Clp_isDualObjectiveLimitReached()

COINLIBAPI int COINLINKAGE Clp_isDualObjectiveLimitReached ( Clp_Simplex *  model)

Is the given dual objective limit reached?

◆ Clp_isIterationLimitReached()

COINLIBAPI int COINLINKAGE Clp_isIterationLimitReached ( Clp_Simplex *  model)

Iteration limit reached?

◆ Clp_getObjSense()

COINLIBAPI double COINLINKAGE Clp_getObjSense ( Clp_Simplex *  model)

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

◆ Clp_setObjSense()

COINLIBAPI void COINLINKAGE Clp_setObjSense ( Clp_Simplex *  model,
double  objsen 
)

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

◆ Clp_getRowActivity()

const COINLIBAPI double* COINLINKAGE Clp_getRowActivity ( Clp_Simplex *  model)

Primal row solution.

◆ Clp_getColSolution()

const COINLIBAPI double* COINLINKAGE Clp_getColSolution ( Clp_Simplex *  model)

Primal column solution.

◆ Clp_setColSolution()

COINLIBAPI void COINLINKAGE Clp_setColSolution ( Clp_Simplex *  model,
const double *  input 
)

◆ Clp_getRowPrice()

const COINLIBAPI double* COINLINKAGE Clp_getRowPrice ( Clp_Simplex *  model)

Dual row solution.

◆ Clp_getReducedCost()

const COINLIBAPI double* COINLINKAGE Clp_getReducedCost ( Clp_Simplex *  model)

Reduced costs.

◆ Clp_getRowLower()

const COINLIBAPI double* COINLINKAGE Clp_getRowLower ( Clp_Simplex *  model)

Row lower.

◆ Clp_getRowUpper()

const COINLIBAPI double* COINLINKAGE Clp_getRowUpper ( Clp_Simplex *  model)

Row upper

◆ Clp_getObjCoefficients()

const COINLIBAPI double* COINLINKAGE Clp_getObjCoefficients ( Clp_Simplex *  model)

Objective.

◆ Clp_getColLower()

const COINLIBAPI double* COINLINKAGE Clp_getColLower ( Clp_Simplex *  model)

Column Lower.

◆ Clp_getColUpper()

const COINLIBAPI double* COINLINKAGE Clp_getColUpper ( Clp_Simplex *  model)

Column Upper.

◆ Clp_getObjValue()

COINLIBAPI double COINLINKAGE Clp_getObjValue ( Clp_Simplex *  model)

Objective value.

◆ Clp_printModel()

COINLIBAPI void COINLINKAGE Clp_printModel ( Clp_Simplex *  model,
const char *  prefix 
)

Print model for debugging purposes.

◆ Clp_getSmallElementValue()

COINLIBAPI double COINLINKAGE Clp_getSmallElementValue ( Clp_Simplex *  model)

◆ Clp_setSmallElementValue()

COINLIBAPI void COINLINKAGE Clp_setSmallElementValue ( Clp_Simplex *  model,
double  value 
)

◆ ClpSolve_setSpecialOption()

COINLIBAPI void COINLINKAGE ClpSolve_setSpecialOption ( Clp_Solve ,
int  which,
int  value,
int  extraInfo 
)

◆ ClpSolve_getSpecialOption()

COINLIBAPI int COINLINKAGE ClpSolve_getSpecialOption ( Clp_Solve ,
int  which 
)

◆ ClpSolve_setSolveType()

COINLIBAPI void COINLINKAGE ClpSolve_setSolveType ( Clp_Solve ,
int  method,
int  extraInfo 
)

method: (see ClpSolve::SolveType) 0 - dual simplex 1 - primal simplex 2 - primal or sprint 3 - barrier 4 - barrier no crossover 5 - automatic 6 - not implemented – pass extraInfo == -1 for default behavior

◆ ClpSolve_getSolveType()

COINLIBAPI int COINLINKAGE ClpSolve_getSolveType ( Clp_Solve )

◆ ClpSolve_setPresolveType()

COINLIBAPI void COINLINKAGE ClpSolve_setPresolveType ( Clp_Solve ,
int  amount,
int  extraInfo 
)

amount: (see ClpSolve::PresolveType) 0 - presolve on 1 - presolve off 2 - presolve number 3 - presolve number cost – pass extraInfo == -1 for default behavior

◆ ClpSolve_getPresolveType()

COINLIBAPI int COINLINKAGE ClpSolve_getPresolveType ( Clp_Solve )

◆ ClpSolve_getPresolvePasses()

COINLIBAPI int COINLINKAGE ClpSolve_getPresolvePasses ( Clp_Solve )

◆ ClpSolve_getExtraInfo()

COINLIBAPI int COINLINKAGE ClpSolve_getExtraInfo ( Clp_Solve ,
int  which 
)

◆ ClpSolve_setInfeasibleReturn()

COINLIBAPI void COINLINKAGE ClpSolve_setInfeasibleReturn ( Clp_Solve ,
int  trueFalse 
)

◆ ClpSolve_infeasibleReturn()

COINLIBAPI int COINLINKAGE ClpSolve_infeasibleReturn ( Clp_Solve )

◆ ClpSolve_doDual()

COINLIBAPI int COINLINKAGE ClpSolve_doDual ( Clp_Solve )

◆ ClpSolve_setDoDual()

COINLIBAPI void COINLINKAGE ClpSolve_setDoDual ( Clp_Solve ,
int  doDual 
)

◆ ClpSolve_doSingleton()

COINLIBAPI int COINLINKAGE ClpSolve_doSingleton ( Clp_Solve )

◆ ClpSolve_setDoSingleton()

COINLIBAPI void COINLINKAGE ClpSolve_setDoSingleton ( Clp_Solve ,
int  doSingleton 
)

◆ ClpSolve_doDoubleton()

COINLIBAPI int COINLINKAGE ClpSolve_doDoubleton ( Clp_Solve )

◆ ClpSolve_setDoDoubleton()

COINLIBAPI void COINLINKAGE ClpSolve_setDoDoubleton ( Clp_Solve ,
int  doDoubleton 
)

◆ ClpSolve_doTripleton()

COINLIBAPI int COINLINKAGE ClpSolve_doTripleton ( Clp_Solve )

◆ ClpSolve_setDoTripleton()

COINLIBAPI void COINLINKAGE ClpSolve_setDoTripleton ( Clp_Solve ,
int  doTripleton 
)

◆ ClpSolve_doTighten()

COINLIBAPI int COINLINKAGE ClpSolve_doTighten ( Clp_Solve )

◆ ClpSolve_setDoTighten()

COINLIBAPI void COINLINKAGE ClpSolve_setDoTighten ( Clp_Solve ,
int  doTighten 
)

◆ ClpSolve_doForcing()

COINLIBAPI int COINLINKAGE ClpSolve_doForcing ( Clp_Solve )

◆ ClpSolve_setDoForcing()

COINLIBAPI void COINLINKAGE ClpSolve_setDoForcing ( Clp_Solve ,
int  doForcing 
)

◆ ClpSolve_doImpliedFree()

COINLIBAPI int COINLINKAGE ClpSolve_doImpliedFree ( Clp_Solve )

◆ ClpSolve_setDoImpliedFree()

COINLIBAPI void COINLINKAGE ClpSolve_setDoImpliedFree ( Clp_Solve ,
int  doImpliedFree 
)

◆ ClpSolve_doDupcol()

COINLIBAPI int COINLINKAGE ClpSolve_doDupcol ( Clp_Solve )

◆ ClpSolve_setDoDupcol()

COINLIBAPI void COINLINKAGE ClpSolve_setDoDupcol ( Clp_Solve ,
int  doDupcol 
)

◆ ClpSolve_doDuprow()

COINLIBAPI int COINLINKAGE ClpSolve_doDuprow ( Clp_Solve )

◆ ClpSolve_setDoDuprow()

COINLIBAPI void COINLINKAGE ClpSolve_setDoDuprow ( Clp_Solve ,
int  doDuprow 
)

◆ ClpSolve_doSingletonColumn()

COINLIBAPI int COINLINKAGE ClpSolve_doSingletonColumn ( Clp_Solve )

◆ ClpSolve_setDoSingletonColumn()

COINLIBAPI void COINLINKAGE ClpSolve_setDoSingletonColumn ( Clp_Solve ,
int  doSingleton 
)

◆ ClpSolve_presolveActions()

COINLIBAPI int COINLINKAGE ClpSolve_presolveActions ( Clp_Solve )

◆ ClpSolve_setPresolveActions()

COINLIBAPI void COINLINKAGE ClpSolve_setPresolveActions ( Clp_Solve ,
int  action 
)

◆ ClpSolve_substitution()

COINLIBAPI int COINLINKAGE ClpSolve_substitution ( Clp_Solve )

◆ ClpSolve_setSubstitution()

COINLIBAPI void COINLINKAGE ClpSolve_setSubstitution ( Clp_Solve ,
int  value 
)