11 #ifndef ClpPredictorCorrector_H
12 #define ClpPredictorCorrector_H
78 bool allowIncreasingGap);
81 bool allowIncreasingGap);
CoinWorkDouble findStepLength(int phase)
findStepLength.
void debugMove(int phase, CoinWorkDouble primalStep, CoinWorkDouble dualStep)
See exactly what would happen given current deltas.
This solves LPs using interior point methods.
CoinWorkDouble findDirectionVector(const int phase)
findDirectionVector.
int updateSolution(CoinWorkDouble nextGap)
updateSolution. Updates solution at end of iteration
void setupForSolve(const int phase)
setupForSolve.
bool checkGoodMove2(CoinWorkDouble move, CoinWorkDouble &bestNextGap, bool allowIncreasingGap)
: checks for one step size
This solves LPs using the predictor-corrector method due to Mehrotra.
int solve()
Primal Dual Predictor Corrector algorithm.
int createSolution()
createSolution. Creates solution from scratch (- code if no memory)
void solveSystem(CoinWorkDouble *region1, CoinWorkDouble *region2, const CoinWorkDouble *region1In, const CoinWorkDouble *region2In, const CoinWorkDouble *saveRegion1, const CoinWorkDouble *saveRegion2, bool gentleRefine)
Does solve.
CoinWorkDouble affineProduct()
Save info on products of affine deltaT*deltaW and deltaS*deltaZ.
CoinWorkDouble complementarityGap() const
ComplementarityGap.
bool checkGoodMove(const bool doCorrector, CoinWorkDouble &bestNextGap, bool allowIncreasingGap)
sees if looks plausible change in complementarity