|
Minotaur 0.4.1
Docs for developers
|
#include <LPEngine.h>


Public Member Functions | |
| LPEngine () | |
| Constructor. May set default parameters/options here. | |
| virtual | ~LPEngine () |
| Destructor must be implemented if memory needs to be freed. | |
| virtual void | enableFactorization () |
| virtual void | disableFactorization () |
| virtual bool | IsOptimalBasisAvailable () |
| virtual void | getBasics (int *) |
| virtual void | getBInvARow (int, double *, double *) |
| virtual int | getNumCols () |
| virtual int | getNumRows () |
| virtual const double * | getColLower () |
| virtual const double * | getColUpper () |
| virtual const double * | getRowLower () |
| virtual const double * | getRowUpper () |
| virtual const double * | getRightHandSide () |
| virtual const double * | getRowActivity () |
| virtual const double * | getOriginalTableau () |
| virtual const int * | getRowStarts () |
| virtual const int * | getIndicesofVars () |
| virtual const int * | getRowLength () |
| virtual void | loadDualWarmStart (int, double *) |
Public Member Functions inherited from Minotaur::Engine | |
| Engine () | |
| Default constructor. | |
| virtual | ~Engine () |
| Destroy. | |
| virtual void | addConstraint (ConstraintPtr)=0 |
| Add a new constraint to the engine. | |
| virtual void | changeBound (ConstraintPtr cons, BoundType lu, double new_val)=0 |
| Change a bound of a constraint. | |
| virtual void | changeBound (VariablePtr var, BoundType lu, double new_val)=0 |
| Change a bound of a variable. | |
| virtual void | changeBound (VariablePtr var, double new_lb, double new_ub)=0 |
| Change both bounds of a variable. | |
| virtual void | changeConstraint (ConstraintPtr c, LinearFunctionPtr lf, double lb, double ub)=0 |
| Change the linear function, and the bounds of a constraint. | |
| virtual void | changeConstraint (ConstraintPtr c, NonlinearFunctionPtr nlf)=0 |
| Change the nonlinear function, and the bounds of a constraint. | |
| virtual void | changeObj (FunctionPtr f, double cb)=0 |
| Change objective function. | |
| virtual void | clear ()=0 |
| Clear the loaded problem, if any, from the engine. | |
| virtual void | disableStrBrSetup ()=0 |
| Restore settings after strong branching. | |
| virtual EnginePtr | emptyCopy () |
| Get a fresh copy of the engine, without the problem loaded into it. | |
| virtual void | enableStrBrSetup ()=0 |
| Make settings for strong branching. | |
| virtual ConstSolutionPtr | getSolution ()=0 |
| Get the solution obtained after solving the problem. | |
| virtual double | getSolutionValue ()=0 |
| Get the solution value. | |
| virtual EngineStatus | solve ()=0 |
| Solve the problem that was loaded previously. | |
| virtual std::string | getName () const =0 |
| Get the name. | |
| virtual EngineStatus | getStatus ()=0 |
| Get the status of the last solve command. | |
| virtual std::string | getStatusString () |
| Return a string that describes the status in simple words. | |
| virtual ConstWarmStartPtr | getWarmStart ()=0 |
| virtual WarmStartPtr | getWarmStartCopy ()=0 |
| virtual void | load (ProblemPtr problem)=0 |
| virtual void | loadFromWarmStart (const WarmStartPtr ws)=0 |
| virtual void | negateObj ()=0 |
| Negate the objective function. Min f is changed to Min -f. | |
| virtual LoggerPtr | getLogger () |
| Return pointer to the log manager. | |
| virtual void | removeCons (std::vector< ConstraintPtr > &delcons)=0 |
| Delete constraints from the engine. | |
| virtual void | resetIterationLimit ()=0 |
| Reset the iteration limit to maximum possible. | |
| virtual int | setDualObjLimit (double)=0 |
| Set the dual objective limit. | |
| virtual void | setIterationLimit (int limit)=0 |
| virtual void | setLogger (LoggerPtr logger) |
| Set a new log manager. | |
| virtual void | setOptionsForSingleSolve () |
| virtual void | setOptionsForRepeatedSolve () |
| Set options to solve the NLP repeatedly, with few changes. | |
| virtual void | writeStats (std::ostream &) const |
| virtual void | fillStats (std::vector< double > &) |
| Accumulate statistics from different threads in a common data. | |
Friends | |
| class | Problem |
Additional Inherited Members | |
Protected Attributes inherited from Minotaur::Engine | |
| EngineStatus | status_ |
| Status of the last solve. | |
| LoggerPtr | logger_ |
| Keep log. | |
The LPEengine class is an abstract class for interfacing LP solvers (like OsiLPEngine). A derived class must implement calls to the LP solver for the methods described here.
add more methods for accessing simplex tableaux.
add more methods for accessing dual rays etc.