This class implements the common interface of the GLPK LP and MIP solver.
#include <lemon/glpk.h>
 Inheritance diagram for GlpkBase:
 Inheritance diagram for GlpkBase:| Public Member Functions | |
| _solver_bits::VoidPtr | lpx () | 
| Pointer to the underlying GLPK data structure. | |
| _solver_bits::VoidPtr | lpx () const | 
| Const pointer to the underlying GLPK data structure. | |
| int | lpxRow (Row r) const | 
| Returns the constraint identifier understood by GLPK. | |
| int | lpxCol (Col c) const | 
| Returns the variable identifier understood by GLPK. | |
| void | write (std::string file, std::string format="MPS") const | 
| Write the problem or the solution to a file in the given format.  More... | |
|  Public Member Functions inherited from LpBase | |
| 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.  More... | |
| void | col (Col c, const DualExpr &e) | 
| Set a column (i.e a dual constraint) of the LP.  More... | |
| DualExpr | col (Col c) const | 
| Get a column (i.e a dual constraint) of the LP.  More... | |
| Col | addCol (const DualExpr &e, Value o=0) | 
| Add a new column to the LP.  More... | |
| Row | addRow () | 
| Add a new empty row (i.e a new constraint) to the LP.  More... | |
| template<class T > | |
| int | addRowSet (T &t) | 
| Add several new rows (i.e constraints) at once.  More... | |
| void | row (Row r, Value l, const Expr &e, Value u) | 
| Set a row (i.e a constraint) of the LP.  More... | |
| void | row (Row r, const Constr &c) | 
| Set a row (i.e a constraint) of the LP.  More... | |
| Expr | row (Row r) const | 
| Get a row (i.e a constraint) of the LP.  More... | |
| Row | addRow (Value l, const Expr &e, Value u) | 
| Add a new row (i.e a new constraint) to the LP.  More... | |
| Row | addRow (const Constr &c) | 
| Add a new row (i.e a new constraint) to the LP.  More... | |
| void | erase (Col c) | 
| Erase a column (i.e a variable) from the LP.  More... | |
| void | erase (Row r) | 
| Erase a row (i.e a constraint) from the LP.  More... | |
| std::string | colName (Col c) const | 
| Get the name of a column.  More... | |
| void | colName (Col c, const std::string &name) | 
| Set the name of a column.  More... | |
| Col | colByName (const std::string &name) const | 
| Get the column by its name.  More... | |
| std::string | rowName (Row r) const | 
| Get the name of a row.  More... | |
| void | rowName (Row r, const std::string &name) | 
| Set the name of a row.  More... | |
| Row | rowByName (const std::string &name) const | 
| Get the row by its name.  More... | |
| void | coeff (Row r, Col c, Value val) | 
| Set an element of the coefficient matrix of the LP.  More... | |
| Value | coeff (Row r, Col c) const | 
| Get an element of the coefficient matrix of the LP.  More... | |
| void | colLowerBound (Col c, Value value) | 
| Set the lower bound of a column (i.e a variable)  More... | |
| Value | colLowerBound (Col c) const | 
| Get the lower bound of a column (i.e a variable)  More... | |
| template<class T > | |
| void | colLowerBound (T &t, Value value) | 
| Set the lower bound of several columns (i.e variables) at once.  More... | |
| void | colUpperBound (Col c, Value value) | 
| Set the upper bound of a column (i.e a variable)  More... | |
| Value | colUpperBound (Col c) const | 
| Get the upper bound of a column (i.e a variable)  More... | |
| template<class T > | |
| void | colUpperBound (T &t, Value value) | 
| Set the upper bound of several columns (i.e variables) at once.  More... | |
| void | colBounds (Col c, Value lower, Value upper) | 
| Set the lower and the upper bounds of a column (i.e a variable)  More... | |
| 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.  More... | |
| void | rowLowerBound (Row r, Value value) | 
| Set the lower bound of a row (i.e a constraint)  More... | |
| Value | rowLowerBound (Row r) const | 
| Get the lower bound of a row (i.e a constraint)  More... | |
| void | rowUpperBound (Row r, Value value) | 
| Set the upper bound of a row (i.e a constraint)  More... | |
| Value | rowUpperBound (Row r) const | 
| Get the upper bound of a row (i.e a constraint)  More... | |
| 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.  More... | |
| Expr | obj () const | 
| Get the objective function.  More... | |
| 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 () | 
| Clear the problem. | |
| void | messageLevel (MessageLevel level) | 
| Set the message level of the solver. | |
| void | write (std::string file, std::string format="MPS") const | 
| Write the problem to a file in the given format.  More... | |
| Additional Inherited Members | |
|  Public Types inherited from LpBase | |
| 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. | |
|  Static Public Member Functions inherited from LpBase | |
| static int | id (const Col &col) | 
| Returns the ID of the column. | |
| static Col | colFromId (int id) | 
| Returns the column with the given ID.  More... | |
| static int | id (const Row &row) | 
| Returns the ID of the row. | |
| static Row | rowFromId (int id) | 
| Returns the row with the given ID.  More... | |
|  Static Public Attributes inherited from LpBase | |
| static const Value | INF | 
| The infinity constant. | |
| static const Value | NaN | 
| The not a number constant. | |
| 
 | inline | 
This function writes the problem or the solution to a file in the given format. Trying to write in an unsupported format will trigger LpBase::UnsupportedFormatError.
| file | The file path | 
| format | The output file format. Supportted formats are "MPS" and "LP". | 
 1.8.5
 1.8.5