Usually this class is not used directly, please use one of the concrete implementations of the solver interface.
Classes |
| class | Col |
| | Refer to a column of the LP. More...
|
| class | ColIt |
| | Iterator for iterate over the columns of an LP problem. More...
|
| class | Constr |
| | Linear constraint. More...
|
| class | DualExpr |
| | Linear expression of rows. More...
|
| class | Expr |
| | Linear expression of variables and a constant component. More...
|
| class | Row |
| | Refer to a row of the LP. More...
|
| class | RowIt |
| | Iterator for iterate over the rows of an LP problem. More...
|
Public Types |
| enum | SolveExitStatus { SOLVED = 0,
UNSOLVED = 1
} |
| | Possible outcomes of an LP solving procedure.
More...
|
| enum | Sense { MIN,
MAX
} |
| | Direction of the optimization.
More...
|
| enum | MessageLevel {
MESSAGE_NOTHING,
MESSAGE_ERROR,
MESSAGE_WARNING,
MESSAGE_NORMAL,
MESSAGE_VERBOSE
} |
| | Enum for messageLevel() parameter.
More...
|
|
typedef double | Value |
| | The floating point type used by the solver.
|
Public Member Functions |
|
virtual | ~LpBase () |
| | Virtual destructor.
|
|
const char * | solverName () const |
| | Gives back the name of the solver.
|
|
|
Col | addCol () |
| | Add a new empty column (i.e a new variable) to the LP.
|
| template<class T > |
| int | addColSet (T &t) |
| | Adds several new columns (i.e variables) at once.
|
| void | col (Col c, const DualExpr &e) |
| | Set a column (i.e a dual constraint) of the LP.
|
| DualExpr | col (Col c) const |
| | Get a column (i.e a dual constraint) of the LP.
|
| Col | addCol (const DualExpr &e, Value o=0) |
| | Add a new column to the LP.
|
| Row | addRow () |
| | Add a new empty row (i.e a new constraint) to the LP.
|
| template<class T > |
| int | addRowSet (T &t) |
| | Add several new rows (i.e constraints) at once.
|
| void | row (Row r, Value l, const Expr &e, Value u) |
| | Set a row (i.e a constraint) of the LP.
|
| void | row (Row r, const Constr &c) |
| | Set a row (i.e a constraint) of the LP.
|
| Expr | row (Row r) const |
| | Get a row (i.e a constraint) of the LP.
|
| Row | addRow (Value l, const Expr &e, Value u) |
| | Add a new row (i.e a new constraint) to the LP.
|
| Row | addRow (const Constr &c) |
| | Add a new row (i.e a new constraint) to the LP.
|
| void | erase (Col c) |
| | Erase a column (i.e a variable) from the LP.
|
| void | erase (Row r) |
| | Erase a row (i.e a constraint) from the LP.
|
| std::string | colName (Col c) const |
| | Get the name of a column.
|
| void | colName (Col c, const std::string &name) |
| | Set the name of a column.
|
| Col | colByName (const std::string &name) const |
| | Get the column by its name.
|
| std::string | rowName (Row r) const |
| | Get the name of a row.
|
| void | rowName (Row r, const std::string &name) |
| | Set the name of a row.
|
| Row | rowByName (const std::string &name) const |
| | Get the row by its name.
|
| void | coeff (Row r, Col c, Value val) |
| | Set an element of the coefficient matrix of the LP.
|
| Value | coeff (Row r, Col c) const |
| | Get an element of the coefficient matrix of the LP.
|
| void | colLowerBound (Col c, Value value) |
| | Set the lower bound of a column (i.e a variable)
|
| Value | colLowerBound (Col c) const |
| | Get the lower bound of a column (i.e a variable)
|
| template<class T > |
| void | colLowerBound (T &t, Value value) |
| | Set the lower bound of several columns (i.e variables) at once.
|
| void | colUpperBound (Col c, Value value) |
| | Set the upper bound of a column (i.e a variable)
|
| Value | colUpperBound (Col c) const |
| | Get the upper bound of a column (i.e a variable)
|
| template<class T > |
| void | colUpperBound (T &t, Value value) |
| | Set the upper bound of several columns (i.e variables) at once.
|
| void | colBounds (Col c, Value lower, Value upper) |
| | Set the lower and the upper bounds of a column (i.e a variable)
|
| template<class T > |
| void | colBounds (T &t, Value lower, Value upper) |
| | Set the lower and the upper bound of several columns (i.e variables) at once.
|
| void | rowLowerBound (Row r, Value value) |
| | Set the lower bound of a row (i.e a constraint)
|
| Value | rowLowerBound (Row r) const |
| | Get the lower bound of a row (i.e a constraint)
|
| void | rowUpperBound (Row r, Value value) |
| | Set the upper bound of a row (i.e a constraint)
|
| Value | rowUpperBound (Row r) const |
| | Get the upper bound of a row (i.e a constraint)
|
|
void | objCoeff (Col c, Value v) |
| | Set an element of the objective function.
|
|
Value | objCoeff (Col c) const |
| | Get an element of the objective function.
|
| void | obj (const Expr &e) |
| | Set the objective function.
|
| Expr | obj () const |
| | Get the objective function.
|
|
void | sense (Sense sense) |
| | Set the direction of optimization.
|
|
Sense | sense () const |
| | Query the direction of the optimization.
|
|
void | max () |
| | Set the sense to maximization.
|
|
void | min () |
| | Set the sense to maximization.
|
|
void | clear () |
| | Clears the problem.
|
|
void | messageLevel (MessageLevel level) |
| | Sets the message level of the solver.
|
Static Public Member Functions |
|
static int | id (const Col &col) |
| | Returns the ID of the column.
|
| static Col | colFromId (int id) |
| | Returns the column with the given ID.
|
|
static int | id (const Row &row) |
| | Returns the ID of the row.
|
| static Row | rowFromId (int id) |
| | Returns the row with the given ID.
|
Static Public Attributes |
|
static const Value | INF |
| | The infinity constant.
|
|
static const Value | NaN |
| | The not a number constant.
|