COIN-OR::LEMON - Graph Library

Changeset 459:ed54c0d13df0 in lemon-main for lemon/lp.h


Ignore:
Timestamp:
12/02/08 22:48:28 (15 years ago)
Author:
Balazs Dezso <deba@…>
Branch:
default
Children:
460:76ec7bd57026, 513:17cabb114d52
Phase:
public
Message:

Thorough redesign of the LP/MIP interface (#44)

  • Redesigned class structure
  • Redesigned iterators
  • Some functions in the basic interface redesigned
  • More complete setting functions
  • Ray retrieving functions
  • Lot of improvements
  • Cplex common env
  • CLP macro definition to config.h.in
  • Update lp.h to also use soplex and clp
  • Remove default_solver_name
  • New solverName() function in solvers
  • Handle exceptions for MipCplex? test
  • Rename tolerance parameter to epsilon
  • Rename MapIt? to CoeffIt?
  • Lot of documentation improvements
  • Various bugfixes
File:
1 edited

Legend:

Unmodified
Added
Removed
  • lemon/lp.h

    r458 r459  
    2525#ifdef HAVE_GLPK
    2626#include <lemon/lp_glpk.h>
    27 #include <lemon/mip_glpk.h>
    2827#elif HAVE_CPLEX
    2928#include <lemon/lp_cplex.h>
    30 #include <lemon/mip_cplex.h>
    3129#elif HAVE_SOPLEX
    3230#include <lemon/lp_soplex.h>
     31#elif HAVE_CLP
     32#include <lemon/lp_clp.h>
    3333#endif
    3434
     
    4444  ///\ingroup lp_group
    4545  ///
    46   ///Currently, the possible values are \c GLPK or \c CPLEX
    47 #define DEFAULT_LP SOLVER
     46  ///Currently, the possible values are \c LP_GLPK, \c LP_CPLEX, \c
     47  ///LP_SOPLEX or \c LP_CLP
     48#define LEMON_DEFAULT_LP SOLVER
    4849  ///The default LP solver
    4950
     
    5152  ///\ingroup lp_group
    5253  ///
    53   ///Currently, it is either \c LpGlpk or \c LpCplex
     54  ///Currently, it is either \c LpGlpk, \c LpCplex, \c LpSoplex or \c LpClp
    5455  typedef LpGlpk Lp;
    55   ///The default LP solver identifier string
    5656
    57   ///The default LP solver identifier string.
     57  ///The default MIP solver identifier
     58
     59  ///The default MIP solver identifier.
    5860  ///\ingroup lp_group
    5961  ///
    60   ///Currently, the possible values are "GLPK" or "CPLEX"
    61   const char default_solver_name[]="SOLVER";
     62  ///Currently, the possible values are \c MIP_GLPK or \c MIP_CPLEX
     63#define LEMON_DEFAULT_MIP SOLVER
     64  ///The default MIP solver.
    6265
    63   ///The default ILP solver.
    64 
    65   ///The default ILP solver.
     66  ///The default MIP solver.
    6667  ///\ingroup lp_group
    6768  ///
    68   ///Currently, it is either \c LpGlpk or \c LpCplex
     69  ///Currently, it is either \c MipGlpk or \c MipCplex
    6970  typedef MipGlpk Mip;
    7071#else
    7172#ifdef HAVE_GLPK
    72 #define DEFAULT_LP GLPK
     73# define LEMON_DEFAULT_LP LP_GLPK
    7374  typedef LpGlpk Lp;
     75# define LEMON_DEFAULT_MIP MIP_GLPK
    7476  typedef MipGlpk Mip;
    75   const char default_solver_name[]="GLPK";
    7677#elif HAVE_CPLEX
    77 #define DEFAULT_LP CPLEX
     78# define LEMON_DEFAULT_LP LP_CPLEX
    7879  typedef LpCplex Lp;
     80# define LEMON_DEFAULT_MIP MIP_CPLEX
    7981  typedef MipCplex Mip;
    80   const char default_solver_name[]="CPLEX";
    8182#elif HAVE_SOPLEX
    82 #define DEFAULT_LP SOPLEX
     83# define DEFAULT_LP LP_SOPLEX
    8384  typedef LpSoplex Lp;
    84   const char default_solver_name[]="SOPLEX";
     85#elif HAVE_CLP
     86# define DEFAULT_LP LP_CLP
     87  typedef LpClp Lp; 
    8588#endif
    8689#endif
Note: See TracChangeset for help on using the changeset viewer.