#include <ClpSimplexNonlinear.hpp>
Inheritance diagram for ClpSimplexNonlinear:


Public Member Functions | |
Description of algorithm | |
| int | primal () |
| A reduced gradient method. | |
| int | primalSLP (int numberPasses, double deltaTolerance) |
| Primal algorithm for quadratic Using a semi-trust region approach as for pooling problem This is in because I have it lying around. | |
| int | primalSLP (int numberConstraints, ClpConstraint **constraints, int numberPasses, double deltaTolerance) |
| Primal algorithm for nonlinear constraints Using a semi-trust region approach as for pooling problem This is in because I have it lying around. | |
| void | directionVector (CoinIndexedVector *longArray, CoinIndexedVector *spare1, CoinIndexedVector *spare2, int mode, double &normFlagged, double &normUnflagged, int &numberNonBasic) |
| Creates direction vector. | |
| int | whileIterating (int &pivotMode) |
| Main part. | |
| 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 trying startup phase Returns 0 - can do normal iteration (basis change) 1 - no basis change 2 - if wants singleton 3 - if time to re-factorize If sequenceIn_ >=0 then that will be incoming variable | |
| void | statusOfProblemInPrimal (int &lastCleaned, int type, ClpSimplexProgress *progress, bool doFactorization, double &bestObjectiveWhenFlagged) |
| Refactorizes if necessary Checks if finished. | |
| int | pivotNonlinearResult () |
| Do last half of an iteration. | |
It inherits from ClpSimplexPrimal. It has no data of its own and is never created - only cast from a ClpSimplexPrimal object at algorithm time. If needed create new class and pass around
Definition at line 27 of file ClpSimplexNonlinear.hpp.
| int ClpSimplexNonlinear::primal | ( | ) |
A reduced gradient method.
| int ClpSimplexNonlinear::primalSLP | ( | int | numberPasses, | |
| double | deltaTolerance | |||
| ) |
Primal algorithm for quadratic Using a semi-trust region approach as for pooling problem This is in because I have it lying around.
| int ClpSimplexNonlinear::primalSLP | ( | int | numberConstraints, | |
| ClpConstraint ** | constraints, | |||
| int | numberPasses, | |||
| double | deltaTolerance | |||
| ) |
Primal algorithm for nonlinear constraints Using a semi-trust region approach as for pooling problem This is in because I have it lying around.
| void ClpSimplexNonlinear::directionVector | ( | CoinIndexedVector * | longArray, | |
| CoinIndexedVector * | spare1, | |||
| CoinIndexedVector * | spare2, | |||
| int | mode, | |||
| double & | normFlagged, | |||
| double & | normUnflagged, | |||
| int & | numberNonBasic | |||
| ) |
Creates direction vector.
note longArray is long enough for rows and columns. If numberNonBasic 0 then is updated otherwise mode is ignored and those are used. Norms are only for those > 1.0e3*dualTolerance If mode is nonzero then just largest dj
| int ClpSimplexNonlinear::whileIterating | ( | int & | pivotMode | ) |
Main part.
| int ClpSimplexNonlinear::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 trying startup phase Returns 0 - can do normal iteration (basis change) 1 - no basis change 2 - if wants singleton 3 - if time to re-factorize If sequenceIn_ >=0 then that will be incoming variable
| void ClpSimplexNonlinear::statusOfProblemInPrimal | ( | int & | lastCleaned, | |
| int | type, | |||
| ClpSimplexProgress * | progress, | |||
| bool | doFactorization, | |||
| double & | bestObjectiveWhenFlagged | |||
| ) |
Refactorizes if necessary Checks if finished.
Updates status. lastCleaned refers to iteration at which some objective/feasibility cleaning too place.
type - 0 initial so set up save arrays etc
| int ClpSimplexNonlinear::pivotNonlinearResult | ( | ) |
Do last half of an iteration.
Return codes Reasons to come out normal mode -1 normal -2 factorize now - good iteration -3 slight inaccuracy - refactorize - iteration done -4 inaccuracy - refactorize - no iteration -5 something flagged - go round again +2 looks unbounded +3 max iterations (iteration done)
1.4.7