Cbc  2.10.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Cbc_C_Interface.h
Go to the documentation of this file.
1 /* $Id: Cbc_C_Interface.h 2598 2019-06-14 15:03:05Z stefan $ */
2 /*
3  Copyright (C) 2004 International Business Machines Corporation and others.
4  All Rights Reserved.
5 
6  This code is licensed under the terms of the Eclipse Public License (EPL).
7 */
8 #ifndef CbcModelC_H
9 #define CbcModelC_H
10 
11 /* include all defines and ugly stuff */
12 #include "Coin_C_defines.h"
13 #include <stddef.h>
14 
15 /*
16  * Original version contributed by Bob Entriken,
17  * significantly updated by Miles Lubin.
18  * 2018: several updates by Haroldo
19  */
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
26 COINLIBAPI const char *COINLINKAGE Cbc_getVersion(void);
27 
33 Cbc_newModel(void);
34 
41 Cbc_setProblemName(Cbc_Model *model, const char *array);
42 
58 Cbc_addCol(Cbc_Model *model, const char *name, double lb,
59  double ub, double obj, char isInteger,
60  int nz, int *rows, double *coefs);
61 
75 Cbc_addRow(Cbc_Model *model, const char *name, int nz,
76  const int *cols, const double *coefs, char sense, double rhs);
77 
80 Cbc_addSOS(Cbc_Model *model, int numRows, const int *rowStarts,
81  const int *colIndices, const double *weights, const int type);
82 
103 Cbc_loadProblem(Cbc_Model *model, const int numcols, const int numrows,
104  const CoinBigIndex *start, const int *index,
105  const double *value,
106  const double *collb, const double *colub,
107  const double *obj,
108  const double *rowlb, const double *rowub);
109 
117 Cbc_setColName(Cbc_Model *model, int iColumn, const char *name);
118 
126 Cbc_setRowName(Cbc_Model *model, int iRow, const char *name);
127 
134 Cbc_setObjSense(Cbc_Model *model, double sense);
135 
143 Cbc_setRowLower(Cbc_Model *model, int index, double value);
144 
152 Cbc_setRowUpper(Cbc_Model *model, int index, double value);
153 
161 Cbc_setObjCoeff(Cbc_Model *model, int index, double value);
162 
170 Cbc_setColLower(Cbc_Model *model, int index, double value);
171 
179 Cbc_setColUpper(Cbc_Model *model, int index, double value);
180 
187 Cbc_setContinuous(Cbc_Model *model, int iColumn);
188 
195 Cbc_setInteger(Cbc_Model *model, int iColumn);
196 
199 Cbc_deleteModel(Cbc_Model *model);
200 
215 Cbc_setMIPStart(Cbc_Model *model, int count, const char **colNames, const double colValues[]);
216 
231 Cbc_setMIPStartI(Cbc_Model *model, int count, const int colIdxs[], const double colValues[]);
232 
239 Cbc_clone(Cbc_Model *model);
240 
254 Cbc_problemName(Cbc_Model *model, int maxNumberCharacters, char *array);
255 
263 
269 Cbc_getNumCols(Cbc_Model *model);
270 
278 
284 Cbc_getNumRows(Cbc_Model *model);
285 
294 Cbc_getRowName(Cbc_Model *model, int iRow, char *name, size_t maxLength);
295 
304 Cbc_getColName(Cbc_Model *model, int iColumn, char *name, size_t maxLength);
305 
313 Cbc_getRowNz(Cbc_Model *model, int row);
314 
321 COINLIBAPI const int *COINLINKAGE
322 Cbc_getRowIndices(Cbc_Model *model, int row);
323 
330 COINLIBAPI const double *COINLINKAGE
331 Cbc_getRowCoeffs(Cbc_Model *model, int row);
332 
340 Cbc_getColNz(Cbc_Model *model, int col);
341 
348 COINLIBAPI const int *COINLINKAGE
349 Cbc_getColIndices(Cbc_Model *model, int col);
350 
357 COINLIBAPI const double *COINLINKAGE
358 Cbc_getColCoeffs(Cbc_Model *model, int col);
359 
366 COINLIBAPI double COINLINKAGE
367 Cbc_getRowRHS(Cbc_Model *model, int row);
368 
375 Cbc_getRowSense(Cbc_Model *model, int row);
376 
382 COINLIBAPI double COINLINKAGE
383 Cbc_getObjSense(Cbc_Model *model);
384 
390 COINLIBAPI const double *COINLINKAGE
391 Cbc_getRowLower(Cbc_Model *model);
392 
398 COINLIBAPI const double *COINLINKAGE
399 Cbc_getRowUpper(Cbc_Model *model);
400 
406 COINLIBAPI const double *COINLINKAGE
408 
414 COINLIBAPI const double *COINLINKAGE
415 Cbc_getColLower(Cbc_Model *model);
416 
422 COINLIBAPI const double *COINLINKAGE
423 Cbc_getColUpper(Cbc_Model *model);
424 
432 Cbc_isInteger(Cbc_Model *model, int i);
433 
434 
447 Cbc_readMps(Cbc_Model *model, const char *filename);
448 
455 Cbc_readLp(Cbc_Model *model, const char *filename);
456 
463 Cbc_writeMps(Cbc_Model *model, const char *filename);
464 
471 Cbc_writeLp(Cbc_Model *model, const char *filename);
472 
489 Cbc_setInitialSolution(Cbc_Model *model, const double *sol);
494 COINLIBAPI const int *COINLINKAGE
495 Cbc_getIndices(Cbc_Model *model);
497 COINLIBAPI const double *COINLINKAGE
498 Cbc_getElements(Cbc_Model *model);
499 
501 COINLIBAPI size_t COINLINKAGE
505 Cbc_printModel(Cbc_Model *model, const char *argPrefix);
514 Cbc_setParameter(Cbc_Model *model, const char *name, const char *value);
515 
516 
519 COINLIBAPI double COINLINKAGE
521 
525 Cbc_setAllowableGap(Cbc_Model *model, double allowedGap);
526 
529 COINLIBAPI double COINLINKAGE
531 
535 Cbc_setAllowableFractionGap(Cbc_Model *model, double allowedFracionGap);
536 
539 COINLIBAPI double COINLINKAGE
541 
545 Cbc_setAllowablePercentageGap(Cbc_Model *model, double allowedPercentageGap);
546 
549 COINLIBAPI double COINLINKAGE
551 
555 Cbc_setMaximumSeconds(Cbc_Model *model, double maxSeconds);
556 
557 
562 
566 Cbc_setMaximumNodes(Cbc_Model *model, int maxNodes);
567 
572 
576 Cbc_setMaximumSolutions(Cbc_Model *model, int maxSolutions);
577 
581 Cbc_getLogLevel(Cbc_Model *model);
582 
586 Cbc_setLogLevel(Cbc_Model *model, int logLevel);
587 
588 
591 COINLIBAPI double COINLINKAGE
592 Cbc_getCutoff(Cbc_Model *model);
593 
597 Cbc_setCutoff(Cbc_Model *model, double cutoff);
598 
599 
600 
608  cbc_callback userCallBack);
609 
613 
615  Cbc_Model *model, cbc_cut_callback cutcb,
616  const char *name, void *appData );
617 
622 /* Solve the model with Cbc (using CbcMain1).
623  */
625 Cbc_solve(Cbc_Model *model);
636 COINLIBAPI const double *COINLINKAGE
638 
639 
645 COINLIBAPI double COINLINKAGE
647 
655 COINLIBAPI double *COINLINKAGE
657 
665 
672 COINLIBAPI const double *COINLINKAGE
673 Cbc_savedSolution(Cbc_Model *model, int whichSol);
674 
681 COINLIBAPI double COINLINKAGE
682 Cbc_savedSolutionObj(Cbc_Model *model, int whichSol);
683 
689 COINLIBAPI const double *COINLINKAGE
691 
698 Cbc_isAbandoned(Cbc_Model *model);
699 
707 
718 
726 
732 COINLIBAPI double COINLINKAGE
733 Cbc_getObjValue(Cbc_Model *model);
734 
751 
772 
774 COINLIBAPI double COINLINKAGE
776 
780 
785 
789 
811 COINLIBAPI const double *COINLINKAGE
819 
827 Osi_getNumCols( void *osi );
828 
831 Osi_getColName( void *osi, int i, char *name, int maxLen );
832 
834 COINLIBAPI const double * COINLINKAGE
835 Osi_getColLower( void *osi );
836 
838 COINLIBAPI const double * COINLINKAGE
839 Osi_getColUpper( void *osi );
840 
843 Osi_isInteger( void *osi, int col );
844 
847 Osi_getNumRows( void *osi );
848 
850 Osi_getRowNz(void *osi, int row);
851 
853 COINLIBAPI const int *COINLINKAGE
854 Osi_getRowIndices(void *osi, int row);
855 
862 COINLIBAPI const double *COINLINKAGE
863 Osi_getRowCoeffs(void *osi, int row);
864 
871 COINLIBAPI double COINLINKAGE
872 Osi_getRowRHS(void *osi, int row);
873 
880 Osi_getRowSense(void *osi, int row);
881 
883 COINLIBAPI const double * COINLINKAGE
884 Osi_getColSolution( void *osi );
885 
886 
894 OsiCuts_addRowCut( void *osiCuts, int nz, const int *idx, const double *coef, char sense, double rhs );
895 
898 #ifdef __cplusplus
899 }
900 #endif
901 #endif
902 
903 /* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
904 */
COINLIBAPI double COINLINKAGE Osi_getRowRHS(void *osi, int row)
Right hand side of a row.
COINLIBAPI int COINLINKAGE Cbc_isInitialSolveAbandoned(Cbc_Model *model)
Are there numerical difficulties (for initialSolve) ?
COINLIBAPI const char *COINLINKAGE Cbc_getVersion(void)
Current version of Cbc.
COINLIBAPI const double *COINLINKAGE Cbc_getRowCoeffs(Cbc_Model *model, int row)
Coefficients of variables that appear on this row.
COINLIBAPI void COINLINKAGE Cbc_addCol(Cbc_Model *model, const char *name, double lb, double ub, double obj, char isInteger, int nz, int *rows, double *coefs)
Creates a new column.
COINLIBAPI void COINLINKAGE Cbc_setAllowableGap(Cbc_Model *model, double allowedGap)
sets the allowable gap
COINLIBAPI void COINLINKAGE Cbc_getColName(Cbc_Model *model, int iColumn, char *name, size_t maxLength)
Queries column name.
COINLIBAPI void COINLINKAGE Cbc_problemName(Cbc_Model *model, int maxNumberCharacters, char *array)
Queries problem name.
COINLIBAPI void COINLINKAGE Cbc_setMaximumNodes(Cbc_Model *model, int maxNodes)
sets the maximum number of nodes that can be explored in the search tree
COINLIBAPI int COINLINKAGE Osi_getRowNz(void *osi, int row)
COINLIBAPI int COINLINKAGE Cbc_getIterationCount(Cbc_Model *model)
Number of iterations.
COINLIBAPI double COINLINKAGE Cbc_getRowRHS(Cbc_Model *model, int row)
Right hand side of a row.
COINLIBAPI double COINLINKAGE Cbc_getMaximumSeconds(Cbc_Model *model)
returns the time limit for the search process
COINLIBAPI void COINLINKAGE Cbc_setMIPStart(Cbc_Model *model, int count, const char **colNames, const double colValues[])
Enter initial feasible solution.
COINLIBAPI void COINLINKAGE Osi_getColName(void *osi, int i, char *name, int maxLen)
Returns column name in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_solve(Cbc_Model *model)
COINLIBAPI void COINLINKAGE Cbc_setColUpper(Cbc_Model *model, int index, double value)
Set the upper bound of a single variable.
COINLIBAPI void COINLINKAGE Cbc_setRowLower(Cbc_Model *model, int index, double value)
Set the lower bound of a single constraint.
COINLIBAPI void COINLINKAGE Cbc_addRow(Cbc_Model *model, const char *name, int nz, const int *cols, const double *coefs, char sense, double rhs)
Adds a new row.
COINLIBAPI void COINLINKAGE Cbc_setAllowablePercentageGap(Cbc_Model *model, double allowedPercentageGap)
sets the allowable percentage gap
COINLIBAPI int COINLINKAGE Cbc_getNumRows(Cbc_Model *model)
Number of constraints in the model.
COINLIBAPI const double *COINLINKAGE Cbc_getRowActivity(Cbc_Model *model)
&quot;row&quot; solution This is the vector A*x, where A is the constraint matrix and x is the current solution...
COINLIBAPI int COINLINKAGE Cbc_getNumCols(Cbc_Model *model)
Number of variables in the model.
COINLIBAPI int COINLINKAGE Cbc_isProvenOptimal(Cbc_Model *model)
If the optimal solution was found.
COINLIBAPI void COINLINKAGE Cbc_setMaximumSolutions(Cbc_Model *model, int maxSolutions)
sets a solution limit as a stopping criterion
COINLIBAPI int COINLINKAGE Cbc_getColNz(Cbc_Model *model, int col)
Number of non-zero entries in a column.
COINLIBAPI void COINLINKAGE Cbc_getRowName(Cbc_Model *model, int iRow, char *name, size_t maxLength)
Queries row name.
COINLIBAPI int COINLINKAGE Cbc_getNodeCount(Cbc_Model *model)
Number of nodes explored in B&amp;B tree.
COINLIBAPI const double *COINLINKAGE Cbc_getColSolution(Cbc_Model *model)
Best feasible solution vector.
COINLIBAPI int COINLINKAGE Cbc_status(Cbc_Model *model)
Final optimization status.
#define COINLINKAGE
void(COINLINKAGE_CB * cbc_cut_callback)(void *osiSolver, void *osiCuts, void *appdata)
typedef for cbc cut callback osiSolver needs to be an OsiSolverInterface object, osiCuts is an OsiCut...
COINLIBAPI const int *COINLINKAGE Cbc_getRowIndices(Cbc_Model *model, int row)
Indices of variables that appear on a row.
COINLIBAPI void COINLINKAGE Cbc_deleteModel(Cbc_Model *model)
Cbc_Model destructor.
COINLIBAPI int COINLINKAGE Cbc_getNumElements(Cbc_Model *model)
Number of nonzero elements in constraint matrix.
COINLIBAPI const double *COINLINKAGE Cbc_savedSolution(Cbc_Model *model, int whichSol)
Vector with the i-th saved solution.
COINLIBAPI int COINLINKAGE Cbc_isSolutionLimitReached(Cbc_Model *model)
Solution limit reached?
COINLIBAPI void COINLINKAGE Cbc_setParameter(Cbc_Model *model, const char *name, const char *value)
Set parameter &quot;name&quot; to value &quot;value&quot;.
COINLIBAPI void COINLINKAGE Cbc_addSOS(Cbc_Model *model, int numRows, const int *rowStarts, const int *colIndices, const double *weights, const int type)
Add SOS constraints to the model using row-order matrix.
COINLIBAPI void COINLINKAGE Cbc_setInteger(Cbc_Model *model, int iColumn)
Set this variable to be integer.
COINLIBAPI void COINLINKAGE Cbc_setInitialSolution(Cbc_Model *model, const double *sol)
Provide an initial feasible solution to accelerate branch-and-bound Note that feasibility of the solu...
COINLIBAPI int COINLINKAGE Cbc_setProblemName(Cbc_Model *model, const char *array)
Sets problem name.
void(COINLINKAGE_CB * cbc_callback)(Cbc_Model *model, int msgno, int ndouble, const double *dvec, int nint, const int *ivec, int nchar, char **cvec)
COINLIBAPI void COINLINKAGE Cbc_setRowUpper(Cbc_Model *model, int index, double value)
Set the upper bound of a single constraint.
COINLIBAPI const int *COINLINKAGE Cbc_getIndices(Cbc_Model *model)
&quot;Row index&quot; vector of constraint matrix
COINLIBAPI int COINLINKAGE Cbc_getLogLevel(Cbc_Model *model)
returns the current log leven
COINLIBAPI const CoinBigIndex *COINLINKAGE Cbc_getVectorStarts(Cbc_Model *model)
&quot;Column start&quot; vector of constraint matrix.
COINLIBAPI double COINLINKAGE Cbc_getCutoff(Cbc_Model *model)
returns the cutoff
COINLIBAPI void COINLINKAGE Cbc_setLogLevel(Cbc_Model *model, int logLevel)
sets the log level
COINLIBAPI const double *COINLINKAGE Cbc_getObjCoefficients(Cbc_Model *model)
Objective vector.
COINLIBAPI void COINLINKAGE Cbc_addCutCallback(Cbc_Model *model, cbc_cut_callback cutcb, const char *name, void *appData)
COINLIBAPI void COINLINKAGE Cbc_clearCallBack(Cbc_Model *model)
Unset Callback function.
COINLIBAPI int COINLINKAGE Cbc_isInteger(Cbc_Model *model, int i)
Determine whether the ith variable is integer restricted.
COINLIBAPI void COINLINKAGE Cbc_setObjSense(Cbc_Model *model, double sense)
Sets optimization direction.
COINLIBAPI double COINLINKAGE Cbc_getAllowableFractionGap(Cbc_Model *model)
returns the allowable fraction gap
COINLIBAPI int COINLINKAGE Osi_isInteger(void *osi, int col)
Returns integrality information for columns in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_secondaryStatus(Cbc_Model *model)
Secondary status of problem.
COINLIBAPI void COINLINKAGE OsiCuts_addRowCut(void *osiCuts, int nz, const int *idx, const double *coef, char sense, double rhs)
adds a row cut (used in callback)
COINLIBAPI char COINLINKAGE Osi_getRowSense(void *osi, int row)
Sense a row.
COINLIBAPI int COINLINKAGE Cbc_isContinuousUnbounded(Cbc_Model *model)
Is continuous model unbounded ?
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)
Loads a problem (the constraints on the rows are given by lower and upper bounds).
COINLIBAPI int COINLINKAGE Cbc_numberSavedSolutions(Cbc_Model *model)
number of integer feasible solution saved
#define COINLIBAPI
This has #defines etc for the &quot;C&quot; interface to Coin.
COINLIBAPI const double *COINLINKAGE Cbc_getElements(Cbc_Model *model)
Coefficient vector of constraint matrix.
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_newModel(void)
Creates an empty problem.
COINLIBAPI void COINLINKAGE Cbc_setColName(Cbc_Model *model, int iColumn, const char *name)
Set the name of a column.
COINLIBAPI double COINLINKAGE Cbc_getObjValue(Cbc_Model *model)
Objective value of best feasible solution.
COINLIBAPI void COINLINKAGE Cbc_writeMps(Cbc_Model *model, const char *filename)
Write an mps file from the given filename.
COINLIBAPI double COINLINKAGE Cbc_getAllowablePercentageGap(Cbc_Model *model)
returns the allowable percentage gap
COINLIBAPI const int *COINLINKAGE Osi_getRowIndices(void *osi, int row)
Indices of variables that appear on a row.
COINLIBAPI const double *COINLINKAGE Osi_getColUpper(void *osi)
Returns column upper bounds in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_getNumIntegers(Cbc_Model *model)
Number of integer variables in the model.
COINLIBAPI void COINLINKAGE Cbc_setCutoff(Cbc_Model *model, double cutoff)
sets the cutoff
COINLIBAPI void COINLINKAGE Cbc_checkSolution(Cbc_Model *model)
Just check solution (for external use) - sets sum of infeasibilities etc.
COINLIBAPI const double *COINLINKAGE Cbc_getRowUpper(Cbc_Model *model)
Constraint upper bounds.
COINLIBAPI void COINLINKAGE Cbc_setRowName(Cbc_Model *model, int iRow, const char *name)
Set the name of a row.
COINLIBAPI const double *COINLINKAGE Cbc_getReducedCost(Cbc_Model *model)
Queries vector of reduced costs.
COINLIBAPI int COINLINKAGE Cbc_getRowNz(Cbc_Model *model, int row)
Number of non-zero entries in a row.
COINLIBAPI void COINLINKAGE Cbc_registerCallBack(Cbc_Model *model, cbc_callback userCallBack)
Pass in Callback function.
COINLIBAPI void COINLINKAGE Cbc_setContinuous(Cbc_Model *model, int iColumn)
Set this variable to be continuous.
COINLIBAPI void COINLINKAGE Cbc_setAllowableFractionGap(Cbc_Model *model, double allowedFracionGap)
sets the allowable fraction gap
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_clone(Cbc_Model *model)
Creates a copy of the current model.
COINLIBAPI const double *COINLINKAGE Cbc_getColLower(Cbc_Model *model)
Variable lower bounds.
COINLIBAPI double COINLINKAGE Cbc_getAllowableGap(Cbc_Model *model)
returns the allowable gap
COINLIBAPI const double *COINLINKAGE Cbc_getColUpper(Cbc_Model *model)
Variable upper bounds.
int CoinBigIndex
COINLIBAPI void COINLINKAGE Cbc_setMaximumSeconds(Cbc_Model *model, double maxSeconds)
sets the time limit for the search process
COINLIBAPI int COINLINKAGE Cbc_readMps(Cbc_Model *model, const char *filename)
Read an mps file from the given filename.
COINLIBAPI const double *COINLINKAGE Osi_getRowCoeffs(void *osi, int row)
Coefficients of variables that appear on this row.
COINLIBAPI const double *COINLINKAGE Osi_getColSolution(void *osi)
Returns solution vector in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_isNodeLimitReached(Cbc_Model *model)
Node limit reached?
COINLIBAPI void COINLINKAGE Cbc_writeLp(Cbc_Model *model, const char *filename)
Write an lp file from the given filename.
void Cbc_Model
COINLIBAPI void COINLINKAGE Cbc_setObjCoeff(Cbc_Model *model, int index, double value)
Set the objective coefficient of a single variable.
COINLIBAPI int COINLINKAGE Cbc_numberPrimalInfeasibilities(Cbc_Model *model)
Number of primal infeasibilities.
COINLIBAPI const double *COINLINKAGE Osi_getColLower(void *osi)
Returns column lower bounds in OsiSolverInterface object.
COINLIBAPI double COINLINKAGE Cbc_getObjSense(Cbc_Model *model)
Direction of optimization.
COINLIBAPI int COINLINKAGE Cbc_getMaximumSolutions(Cbc_Model *model)
returns solution limit for the search process
COINLIBAPI void COINLINKAGE Cbc_setColLower(Cbc_Model *model, int index, double value)
Set the lower bound of a single variable.
COINLIBAPI int COINLINKAGE Osi_getNumCols(void *osi)
Returns number of cols in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_isSecondsLimitReached(Cbc_Model *model)
Time limit reached?
COINLIBAPI double COINLINKAGE Cbc_getBestPossibleObjValue(Cbc_Model *model)
Best known bound on the optimal objective value.
COINLIBAPI void COINLINKAGE Cbc_printSolution(Cbc_Model *model)
Print the solution.
COINLIBAPI int COINLINKAGE Cbc_getMaximumNodes(Cbc_Model *model)
returns the maximum number of nodes that can be explored in the search tree
COINLIBAPI void COINLINKAGE Cbc_setMIPStartI(Cbc_Model *model, int count, const int colIdxs[], const double colValues[])
Enter initial feasible solution.
COINLIBAPI double *COINLINKAGE Cbc_bestSolution(Cbc_Model *model)
Best integer feasible solution.
COINLIBAPI void COINLINKAGE Cbc_printModel(Cbc_Model *model, const char *argPrefix)
Print the model.
COINLIBAPI int COINLINKAGE Cbc_isAbandoned(Cbc_Model *model)
If optimization was abandoned due to numerical difficulties.
COINLIBAPI char COINLINKAGE Cbc_getRowSense(Cbc_Model *model, int row)
Sense a row.
COINLIBAPI int COINLINKAGE Cbc_readLp(Cbc_Model *model, const char *filename)
Read an lp file from the given filename.
COINLIBAPI const double *COINLINKAGE Cbc_getRowLower(Cbc_Model *model)
Constraint lower bounds.
COINLIBAPI int COINLINKAGE Osi_getNumRows(void *osi)
Returns number of rows in OsiSolverInterface object.
COINLIBAPI const int *COINLINKAGE Cbc_getColIndices(Cbc_Model *model, int col)
Indices of rows that a column appears.
COINLIBAPI const double *COINLINKAGE Cbc_getColCoeffs(Cbc_Model *model, int col)
Coefficients that a column appear in rows.
COINLIBAPI size_t COINLINKAGE Cbc_maxNameLength(Cbc_Model *model)
Maximum lenght of a row or column name.
COINLIBAPI double COINLINKAGE Cbc_savedSolutionObj(Cbc_Model *model, int whichSol)
Cost of the whichSol solution.
COINLIBAPI double COINLINKAGE Cbc_sumPrimalInfeasibilities(Cbc_Model *model)
Sum of primal infeasibilities.
COINLIBAPI int COINLINKAGE Cbc_isInitialSolveProvenOptimal(Cbc_Model *model)
Is optimality proven (for initialSolve) ?
COINLIBAPI int COINLINKAGE Cbc_isProvenInfeasible(Cbc_Model *model)
If infeasibility was proven.
COINLIBAPI int COINLINKAGE Cbc_isInitialSolveProvenPrimalInfeasible(Cbc_Model *model)
Is primal infeasiblity proven (for initialSolve) ?