- Insert LP stuff into the module structure
authoralpar
Fri, 08 Apr 2005 15:24:01 +0000
changeset 1328a8dd11348853
parent 1327 ecc1cdea2ee7
child 1329 1bfaec33215b
- Insert LP stuff into the module structure
- More doc
src/lemon/lp_base.h
src/lemon/lp_glpk.h
     1.1 --- a/src/lemon/lp_base.h	Fri Apr 08 15:22:46 2005 +0000
     1.2 +++ b/src/lemon/lp_base.h	Fri Apr 08 15:24:01 2005 +0000
     1.3 @@ -30,6 +30,7 @@
     1.4  
     1.5  ///\file
     1.6  ///\brief The interface of the LP solver interface.
     1.7 +///\ingroup gen_opt_group
     1.8  namespace lemon {
     1.9    
    1.10    ///Internal data structure to convert floating id's to fix one's
    1.11 @@ -100,6 +101,9 @@
    1.12    };
    1.13      
    1.14    ///Common base class for LP solvers
    1.15 +  
    1.16 +  ///\todo Much more docs
    1.17 +  ///\ingroup gen_opt_group
    1.18    class LpSolverBase {
    1.19  
    1.20    public:
    1.21 @@ -217,7 +221,8 @@
    1.22      ///2*v-3.12*(v-w/2)+2
    1.23      ///v*2.1+(3*v+(v*12+w+6)*3)/2
    1.24      ///\endcode
    1.25 -    ///are valid expressions. The usual assignment operations are also defined.
    1.26 +    ///are valid \ref Expr "Expr"essions.
    1.27 +    ///The usual assignment operations are also defined.
    1.28      ///\code
    1.29      ///e=v+w;
    1.30      ///e+=2*v-3.12*(v-w/2)+2;
    1.31 @@ -230,8 +235,11 @@
    1.32      ///double c=e.constComp();
    1.33      ///\endcode
    1.34      ///
    1.35 -    ///\note that \ref clear() not only sets all coefficients to 0 but also
    1.36 +    ///\note \ref clear() not only sets all coefficients to 0 but also
    1.37      ///clears the constant components.
    1.38 +    ///
    1.39 +    ///\sa Constr
    1.40 +    ///
    1.41      class Expr : public std::map<Col,Value>
    1.42      {
    1.43      public:
    1.44 @@ -309,7 +317,9 @@
    1.45      };
    1.46      
    1.47      ///Linear constraint
    1.48 -    //typedef LinConstr<Expr> Constr;
    1.49 +
    1.50 +    ///\todo document please
    1.51 +    ///
    1.52      class Constr
    1.53      {
    1.54      public:
    1.55 @@ -503,6 +513,8 @@
    1.56      ///\param u is the upper bound (\ref INF means no bound)
    1.57      ///\bug This is a temportary function. The interface will change to
    1.58      ///a better one.
    1.59 +    ///\todo Option to control whether a constraint with a single variable is
    1.60 +    ///added or not.
    1.61      void setRow(Row r, Value l,const Expr &e, Value u) {
    1.62        std::vector<int> indices;
    1.63        std::vector<Value> values;
     2.1 --- a/src/lemon/lp_glpk.h	Fri Apr 08 15:22:46 2005 +0000
     2.2 +++ b/src/lemon/lp_glpk.h	Fri Apr 08 15:24:01 2005 +0000
     2.3 @@ -19,6 +19,7 @@
     2.4  
     2.5  ///\file
     2.6  ///\brief Header of the LEMON-GLPK lp solver interface.
     2.7 +///\ingroup gen_opt_group
     2.8  
     2.9  #include "lp_base.h"
    2.10  extern "C" {
    2.11 @@ -31,6 +32,7 @@
    2.12    /// \brief Wrapper for GLPK solver
    2.13    /// 
    2.14    /// This class implements a lemon wrapper for GLPK.
    2.15 +  ///\ingroup gen_opt_group
    2.16    class LpGlpk : public LpSolverBase {
    2.17    protected:
    2.18      LPX* lp;