#include <ClpDualRowPivot.hpp>
Inheritance diagram for ClpDualRowPivot:
Public Methods | |
Algorithmic methods | |
virtual int | pivotRow ()=0 |
Returns pivot row, -1 if none. | |
virtual double | updateWeights (CoinIndexedVector *input, CoinIndexedVector *spare, CoinIndexedVector *updatedColumn)=0 |
Updates weights and returns pivot alpha. | |
virtual void | updatePrimalSolution (CoinIndexedVector *input, double theta, double &changeInObjective)=0 |
Updates primal solution (and maybe list of candidates) Uses input vector which it deletes Computes change in objective function Would be faster if we kept basic regions, but on other hand it means everything is always in sync. | |
virtual void | saveWeights (ClpSimplex *model, int mode) |
Saves any weights round factorization as pivot rows may change Will be empty unless steepest edge (will save model) May also recompute infeasibility stuff 1) before factorization 2) after good factorization (if weights empty may initialize) 3) after something happened but no factorization (e.g. | |
virtual void | checkAccuracy () |
checks accuracy and may re-initialize (may be empty) | |
virtual void | unrollWeights () |
Gets rid of last update (may be empty). | |
virtual void | clearArrays () |
Gets rid of all arrays (may be empty). | |
virtual bool | looksOptimal () const |
Returns true if would not find any row. | |
Constructors and destructors | |
ClpDualRowPivot () | |
Default Constructor. | |
ClpDualRowPivot (const ClpDualRowPivot &) | |
Copy constructor. | |
ClpDualRowPivot & | operator= (const ClpDualRowPivot &rhs) |
Assignment operator. | |
virtual | ~ClpDualRowPivot () |
Destructor. | |
virtual ClpDualRowPivot * | clone (bool copyData=true) const=0 |
Clone. | |
Other | |
ClpSimplex * | model () |
Returns model. | |
int | type () |
Returns type (above 63 is extra information). | |
Protected Attributes | |
Protected member data | |
ClpSimplex * | model_ |
Pointer to model. | |
int | type_ |
Type of row pivot algorithm. |
Abstract Base Class for describing an interface to an algorithm to choose row pivot in dual simplex algorithm. For some algorithms e.g. Dantzig choice then some functions may be null.
Definition at line 19 of file ClpDualRowPivot.hpp.
|
Default Constructor.
|
|
Copy constructor.
|
|
Destructor.
|
|
Returns pivot row, -1 if none.
Implemented in ClpDualRowDantzig, and ClpDualRowSteepest. |
|
Updates weights and returns pivot alpha.
Implemented in ClpDualRowDantzig, and ClpDualRowSteepest. |
|
Updates primal solution (and maybe list of candidates) Uses input vector which it deletes Computes change in objective function Would be faster if we kept basic regions, but on other hand it means everything is always in sync.
Implemented in ClpDualRowDantzig, and ClpDualRowSteepest. |
|
Saves any weights round factorization as pivot rows may change Will be empty unless steepest edge (will save model) May also recompute infeasibility stuff 1) before factorization 2) after good factorization (if weights empty may initialize) 3) after something happened but no factorization (e.g. check for infeasible) 4) as 2 but restore weights from previous snapshot 5) for strong branching - initialize , infeasibilities Reimplemented in ClpDualRowSteepest. |
|
checks accuracy and may re-initialize (may be empty)
|
|
Gets rid of last update (may be empty).
Reimplemented in ClpDualRowSteepest. |
|
Gets rid of all arrays (may be empty).
Reimplemented in ClpDualRowSteepest. |
|
Returns true if would not find any row.
Reimplemented in ClpDualRowSteepest. Definition at line 62 of file ClpDualRowPivot.hpp. |
|
Assignment operator.
|
|
Clone.
Implemented in ClpDualRowDantzig, and ClpDualRowSteepest. |
|
Returns model.
Definition at line 89 of file ClpDualRowPivot.hpp. References model_. |
|
Returns type (above 63 is extra information).
Definition at line 93 of file ClpDualRowPivot.hpp. References type_. |
|
Pointer to model.
Definition at line 104 of file ClpDualRowPivot.hpp. Referenced by model(). |
|
Type of row pivot algorithm.
Definition at line 106 of file ClpDualRowPivot.hpp. Referenced by type(). |