# Changeset 1259:11a09f1319b3 in lemon-0.x for src/work/athos/lp/lp_base.h

Ignore:
Timestamp:
03/25/05 13:58:52 (18 years ago)
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@1686
Message:
• Largely extended linear expressions
• Better docs
File:
1 edited

Unmodified
Added
Removed
• ## src/work/athos/lp/lp_base.h

 r1258 friend class LpSolverBase; public: typedef Value ExprValue; typedef True LpSolverCol; Col() {} friend class LpSolverBase; public: typedef Value ExprValue; typedef True LpSolverRow; Row() {} bool operator!=(Row c) const  {return id==c.id;} }; typedef SparseLinExpr Expr; ///Linear expression typedef SparseLinExprExpr; protected: /// The lower bound of a variable (column) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or -INF. /// Value or -\ref INF. virtual void _setColLowerBound(int i, Value value) = 0; /// \e /// The upper bound of a variable (column) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or INF. /// Value or \ref INF. virtual void _setColUpperBound(int i, Value value) = 0; /// \e /// The lower bound of a linear expression (row) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or -INF. /// Value or -\ref INF. virtual void _setRowLowerBound(int i, Value value) = 0; /// \e /// The upper bound of a linear expression (row) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or INF. /// Value or \ref INF. virtual void _setRowUpperBound(int i, Value value) = 0; ///\param r is the row to be modified ///\param l is lower bound (-INF means no bound) ///\param l is lower bound (-\ref INF means no bound) ///\param e is a linear expression (see \ref Expr) ///\param u is the upper bound (INF means no bound) ///\param u is the upper bound (\ref INF means no bound) ///\bug This is a temportary function. The interface will change to ///a better one. ///Add a new row (i.e a new constaint) to the LP ///\param l is the lower bound (-INF means no bound) ///\param l is the lower bound (-\ref INF means no bound) ///\param e is a linear expression (see \ref Expr) ///\param u is the upper bound (INF means no bound) ///\param u is the upper bound (\ref INF means no bound) ///\return The created row. ///\bug This is a temportary function. The interface will change to /// The upper bound of a variable (column) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or -INF. /// Value or -\ref INF. virtual void setColLowerBound(Col c, Value value) { _setColLowerBound(cols.floatingId(c.id),value); /// The upper bound of a variable (column) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or INF. /// Value or \ref INF. virtual void setColUpperBound(Col c, Value value) { _setColUpperBound(cols.floatingId(c.id),value); /// The lower bound of a linear expression (row) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or -INF. /// Value or -\ref INF. virtual void setRowLowerBound(Row r, Value value) { _setRowLowerBound(rows.floatingId(r.id),value); /// The upper bound of a linear expression (row) have to be given by an /// extended number of type Value, i.e. a finite number of type /// Value or INF. /// Value or \ref INF. virtual void setRowUpperBound(Row r, Value value) { _setRowUpperBound(rows.floatingId(r.id),value);
Note: See TracChangeset for help on using the changeset viewer.