Go to the documentation of this file.
11 #ifndef ClpSimplexNonlinear_H
12 #define ClpSimplexNonlinear_H
14 class ClpNonlinearInfo;
43 int primalSLP(
int numberPasses,
double deltaTolerance,
44 int otherOptions = 0);
53 int numberPasses,
double deltaTolerance);
61 CoinIndexedVector *spare1, CoinIndexedVector *spare2,
63 double &normFlagged,
double &normUnflagged,
82 CoinIndexedVector *spare,
84 double &solutionError,
98 double &bestObjectiveWhenFlagged);
CoinIndexedVector * rowArray(int index) const
Useful row length arrays (0,1,2,3,4,5)
void directionVector(CoinIndexedVector *longArray, CoinIndexedVector *spare1, CoinIndexedVector *spare2, int mode, double &normFlagged, double &normUnflagged, int &numberNonBasic)
Creates direction vector.
int pivotNonlinearResult()
Do last half of an iteration.
CoinIndexedVector * columnArray(int index) const
Useful column length arrays (0,1,2,3,4,5)
For saving extra information to see if looping.
int whileIterating(int &pivotMode)
Main part.
Constraint Abstract Base Class.
int primal()
Primal algorithms for reduced gradient At present we have two algorithms:
This solves LPs using the primal simplex method.
int primalSLP(int numberPasses, double deltaTolerance, int otherOptions=0)
Primal algorithm for quadratic Using a semi-trust region approach as for pooling problem This is in b...
int algorithm() const
Current (or last) algorithm.
int pivotColumn(CoinIndexedVector *longArray, CoinIndexedVector *rowArray, CoinIndexedVector *columnArray, CoinIndexedVector *spare, int &pivotMode, double &solutionError, double *array1)
longArray has direction pivotMode - 0 - use all dual infeasible variables 1 - largest dj while >= 10 ...
This solves non-linear LPs using the primal simplex method.
Quadratic Objective Class.
int primalDualCuts(char *rowsIn, int startUp, int algorithm)
May use a cut approach for solving any LP.
void statusOfProblemInPrimal(int &lastCleaned, int type, ClpSimplexProgress *progress, bool doFactorization, double &bestObjectiveWhenFlagged)
Refactorizes if necessary Checks if finished.
ClpSimplexProgress * progress()
For dealing with all issues of cycling etc.