COIN-OR::LEMON - Graph Library

Changeset 1542:0219ee65ffcc in lemon-0.x for lemon/lp_base.h


Ignore:
Timestamp:
07/07/05 17:00:04 (14 years ago)
Author:
athos
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@2037
Message:

Some testing of the LP interface: bugs got fixed.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lemon/lp_base.h

    r1536 r1542  
    139139    };
    140140
    141       ///\e The type of the investigated LP problem
    142       enum ProblemTypes {
    143           ///Primal-dual feasible
    144           PRIMAL_DUAL_FEASIBLE = 0,
    145           ///Primal feasible dual infeasible
    146           PRIMAL_FEASIBLE_DUAL_INFEASIBLE = 1,
    147           ///Primal infeasible dual feasible
    148           PRIMAL_INFEASIBLE_DUAL_FEASIBLE = 2,
    149           ///Primal-dual infeasible
    150           PRIMAL_DUAL_INFEASIBLE = 3,
    151           ///Could not determine so far
    152           UNKNOWN = 4
    153       };
     141    ///\e The type of the investigated LP problem
     142    enum ProblemTypes {
     143      ///Primal-dual feasible
     144      PRIMAL_DUAL_FEASIBLE = 0,
     145      ///Primal feasible dual infeasible
     146      PRIMAL_FEASIBLE_DUAL_INFEASIBLE = 1,
     147      ///Primal infeasible dual feasible
     148      PRIMAL_INFEASIBLE_DUAL_FEASIBLE = 2,
     149      ///Primal-dual infeasible
     150      PRIMAL_DUAL_INFEASIBLE = 3,
     151      ///Could not determine so far
     152      UNKNOWN = 4
     153    };
    154154
    155155    ///The floating point type used by the solver
     
    553553    virtual int _addCol() = 0;
    554554    virtual int _addRow() = 0;
     555    virtual void _eraseCol(int col) = 0;
     556    virtual void _eraseRow(int row) = 0;
    555557    virtual void _setRowCoeffs(int i,
    556558                               int length,
     
    681683    ///\param c is the column to be modified
    682684    ///\param e is a dual linear expression (see \ref DualExpr)
    683     ///\bug This is a temportary function. The interface will change to
     685    ///\bug This is a temporary function. The interface will change to
    684686    ///a better one.
    685687    void setCol(Col c,const DualExpr &e) {
     
    718720    Row addRow() { Row r; r.id=rows.insert(_addRow()); return r;}
    719721
    720     ///\brief Adds several new row
    721     ///(i.e a variables) at once
     722    ///\brief Add several new rows
     723    ///(i.e a constraints) at once
    722724    ///
    723725    ///This magic function takes a container as its argument
     
    844846      return r;
    845847    }
     848    ///Erase a coloumn (i.e a variable) from the LP
     849
     850    ///\param c is the coloumn to be deleted
     851    ///\todo Please check this
     852    void eraseCol(Col c) {
     853      _eraseCol(cols.floatingId(c.id));
     854      cols.erase(c.id);
     855    }
     856    ///Erase a  row (i.e a constraint) from the LP
     857
     858    ///\param r is the row to be deleted
     859    ///\todo Please check this
     860    void eraseRow(Row r) {
     861      _eraseRow(rows.floatingId(r.id));
     862      rows.erase(r.id);
     863    }
    846864
    847865    ///Set an element of the coefficient matrix of the LP
Note: See TracChangeset for help on using the changeset viewer.