lemon/glpk.cc
changeset 462 9b082b3fb33f
parent 461 08d495d48089
child 537 0fec6a017ead
child 540 9db62975c32b
     1.1 --- a/lemon/glpk.cc	Mon Jan 12 12:26:01 2009 +0000
     1.2 +++ b/lemon/glpk.cc	Mon Jan 12 12:26:02 2009 +0000
     1.3 @@ -522,33 +522,33 @@
     1.4      cols.clear();
     1.5    }
     1.6  
     1.7 -  // LpGlpk members
     1.8 +  // GlpkLp members
     1.9  
    1.10 -  LpGlpk::LpGlpk()
    1.11 +  GlpkLp::GlpkLp()
    1.12      : LpBase(), GlpkBase(), LpSolver() {
    1.13      messageLevel(MESSAGE_NO_OUTPUT);
    1.14    }
    1.15  
    1.16 -  LpGlpk::LpGlpk(const LpGlpk& other)
    1.17 +  GlpkLp::GlpkLp(const GlpkLp& other)
    1.18      : LpBase(other), GlpkBase(other), LpSolver(other) {
    1.19      messageLevel(MESSAGE_NO_OUTPUT);
    1.20    }
    1.21  
    1.22 -  LpGlpk* LpGlpk::_newSolver() const { return new LpGlpk; }
    1.23 -  LpGlpk* LpGlpk::_cloneSolver() const { return new LpGlpk(*this); }
    1.24 +  GlpkLp* GlpkLp::_newSolver() const { return new GlpkLp; }
    1.25 +  GlpkLp* GlpkLp::_cloneSolver() const { return new GlpkLp(*this); }
    1.26  
    1.27 -  const char* LpGlpk::_solverName() const { return "LpGlpk"; }
    1.28 +  const char* GlpkLp::_solverName() const { return "GlpkLp"; }
    1.29  
    1.30 -  void LpGlpk::_clear_temporals() {
    1.31 +  void GlpkLp::_clear_temporals() {
    1.32      _primal_ray.clear();
    1.33      _dual_ray.clear();
    1.34    }
    1.35  
    1.36 -  LpGlpk::SolveExitStatus LpGlpk::_solve() {
    1.37 +  GlpkLp::SolveExitStatus GlpkLp::_solve() {
    1.38      return solvePrimal();
    1.39    }
    1.40  
    1.41 -  LpGlpk::SolveExitStatus LpGlpk::solvePrimal() {
    1.42 +  GlpkLp::SolveExitStatus GlpkLp::solvePrimal() {
    1.43      _clear_temporals();
    1.44  
    1.45      glp_smcp smcp;
    1.46 @@ -573,7 +573,7 @@
    1.47      return SOLVED;
    1.48    }
    1.49  
    1.50 -  LpGlpk::SolveExitStatus LpGlpk::solveDual() {
    1.51 +  GlpkLp::SolveExitStatus GlpkLp::solveDual() {
    1.52      _clear_temporals();
    1.53  
    1.54      glp_smcp smcp;
    1.55 @@ -599,19 +599,19 @@
    1.56      return SOLVED;
    1.57    }
    1.58  
    1.59 -  LpGlpk::Value LpGlpk::_getPrimal(int i) const {
    1.60 +  GlpkLp::Value GlpkLp::_getPrimal(int i) const {
    1.61      return glp_get_col_prim(lp, i);
    1.62    }
    1.63  
    1.64 -  LpGlpk::Value LpGlpk::_getDual(int i) const {
    1.65 +  GlpkLp::Value GlpkLp::_getDual(int i) const {
    1.66      return glp_get_row_dual(lp, i);
    1.67    }
    1.68  
    1.69 -  LpGlpk::Value LpGlpk::_getPrimalValue() const {
    1.70 +  GlpkLp::Value GlpkLp::_getPrimalValue() const {
    1.71      return glp_get_obj_val(lp);
    1.72    }
    1.73  
    1.74 -  LpGlpk::VarStatus LpGlpk::_getColStatus(int i) const {
    1.75 +  GlpkLp::VarStatus GlpkLp::_getColStatus(int i) const {
    1.76      switch (glp_get_col_stat(lp, i)) {
    1.77      case GLP_BS:
    1.78        return BASIC;
    1.79 @@ -625,11 +625,11 @@
    1.80        return FIXED;
    1.81      default:
    1.82        LEMON_ASSERT(false, "Wrong column status");
    1.83 -      return LpGlpk::VarStatus();
    1.84 +      return GlpkLp::VarStatus();
    1.85      }
    1.86    }
    1.87  
    1.88 -  LpGlpk::VarStatus LpGlpk::_getRowStatus(int i) const {
    1.89 +  GlpkLp::VarStatus GlpkLp::_getRowStatus(int i) const {
    1.90      switch (glp_get_row_stat(lp, i)) {
    1.91      case GLP_BS:
    1.92        return BASIC;
    1.93 @@ -643,11 +643,11 @@
    1.94        return FIXED;
    1.95      default:
    1.96        LEMON_ASSERT(false, "Wrong row status");
    1.97 -      return LpGlpk::VarStatus();
    1.98 +      return GlpkLp::VarStatus();
    1.99      }
   1.100    }
   1.101  
   1.102 -  LpGlpk::Value LpGlpk::_getPrimalRay(int i) const {
   1.103 +  GlpkLp::Value GlpkLp::_getPrimalRay(int i) const {
   1.104      if (_primal_ray.empty()) {
   1.105        int row_num = glp_get_num_rows(lp);
   1.106        int col_num = glp_get_num_cols(lp);
   1.107 @@ -699,7 +699,7 @@
   1.108      return _primal_ray[i];
   1.109    }
   1.110  
   1.111 -  LpGlpk::Value LpGlpk::_getDualRay(int i) const {
   1.112 +  GlpkLp::Value GlpkLp::_getDualRay(int i) const {
   1.113      if (_dual_ray.empty()) {
   1.114        int row_num = glp_get_num_rows(lp);
   1.115  
   1.116 @@ -771,7 +771,7 @@
   1.117      return _dual_ray[i];
   1.118    }
   1.119  
   1.120 -  LpGlpk::ProblemType LpGlpk::_getPrimalType() const {
   1.121 +  GlpkLp::ProblemType GlpkLp::_getPrimalType() const {
   1.122      if (glp_get_status(lp) == GLP_OPT)
   1.123        return OPTIMAL;
   1.124      switch (glp_get_prim_stat(lp)) {
   1.125 @@ -788,11 +788,11 @@
   1.126        return INFEASIBLE;
   1.127      default:
   1.128        LEMON_ASSERT(false, "Wrong primal type");
   1.129 -      return  LpGlpk::ProblemType();
   1.130 +      return  GlpkLp::ProblemType();
   1.131      }
   1.132    }
   1.133  
   1.134 -  LpGlpk::ProblemType LpGlpk::_getDualType() const {
   1.135 +  GlpkLp::ProblemType GlpkLp::_getDualType() const {
   1.136      if (glp_get_status(lp) == GLP_OPT)
   1.137        return OPTIMAL;
   1.138      switch (glp_get_dual_stat(lp)) {
   1.139 @@ -809,31 +809,31 @@
   1.140        return INFEASIBLE;
   1.141      default:
   1.142        LEMON_ASSERT(false, "Wrong primal type");
   1.143 -      return  LpGlpk::ProblemType();
   1.144 +      return  GlpkLp::ProblemType();
   1.145      }
   1.146    }
   1.147  
   1.148 -  void LpGlpk::presolver(bool b) {
   1.149 +  void GlpkLp::presolver(bool b) {
   1.150      lpx_set_int_parm(lp, LPX_K_PRESOL, b ? 1 : 0);
   1.151    }
   1.152  
   1.153 -  void LpGlpk::messageLevel(MessageLevel m) {
   1.154 +  void GlpkLp::messageLevel(MessageLevel m) {
   1.155      _message_level = m;
   1.156    }
   1.157  
   1.158 -  // MipGlpk members
   1.159 +  // GlpkMip members
   1.160  
   1.161 -  MipGlpk::MipGlpk()
   1.162 +  GlpkMip::GlpkMip()
   1.163      : LpBase(), GlpkBase(), MipSolver() {
   1.164      messageLevel(MESSAGE_NO_OUTPUT);
   1.165    }
   1.166  
   1.167 -  MipGlpk::MipGlpk(const MipGlpk& other)
   1.168 +  GlpkMip::GlpkMip(const GlpkMip& other)
   1.169      : LpBase(), GlpkBase(other), MipSolver() {
   1.170      messageLevel(MESSAGE_NO_OUTPUT);
   1.171    }
   1.172  
   1.173 -  void MipGlpk::_setColType(int i, MipGlpk::ColTypes col_type) {
   1.174 +  void GlpkMip::_setColType(int i, GlpkMip::ColTypes col_type) {
   1.175      switch (col_type) {
   1.176      case INTEGER:
   1.177        glp_set_col_kind(lp, i, GLP_IV);
   1.178 @@ -844,7 +844,7 @@
   1.179      }
   1.180    }
   1.181  
   1.182 -  MipGlpk::ColTypes MipGlpk::_getColType(int i) const {
   1.183 +  GlpkMip::ColTypes GlpkMip::_getColType(int i) const {
   1.184      switch (glp_get_col_kind(lp, i)) {
   1.185      case GLP_IV:
   1.186      case GLP_BV:
   1.187 @@ -855,7 +855,7 @@
   1.188  
   1.189    }
   1.190  
   1.191 -  MipGlpk::SolveExitStatus MipGlpk::_solve() {
   1.192 +  GlpkMip::SolveExitStatus GlpkMip::_solve() {
   1.193      glp_smcp smcp;
   1.194      glp_init_smcp(&smcp);
   1.195  
   1.196 @@ -901,7 +901,7 @@
   1.197    }
   1.198  
   1.199  
   1.200 -  MipGlpk::ProblemType MipGlpk::_getType() const {
   1.201 +  GlpkMip::ProblemType GlpkMip::_getType() const {
   1.202      switch (glp_get_status(lp)) {
   1.203      case GLP_OPT:
   1.204        switch (glp_mip_status(lp)) {
   1.205 @@ -915,7 +915,7 @@
   1.206          return OPTIMAL;
   1.207        default:
   1.208          LEMON_ASSERT(false, "Wrong problem type.");
   1.209 -        return MipGlpk::ProblemType();
   1.210 +        return GlpkMip::ProblemType();
   1.211        }
   1.212      case GLP_NOFEAS:
   1.213        return INFEASIBLE;
   1.214 @@ -928,24 +928,24 @@
   1.215        }
   1.216      default:
   1.217        LEMON_ASSERT(false, "Wrong problem type.");
   1.218 -      return MipGlpk::ProblemType();
   1.219 +      return GlpkMip::ProblemType();
   1.220      }
   1.221    }
   1.222  
   1.223 -  MipGlpk::Value MipGlpk::_getSol(int i) const {
   1.224 +  GlpkMip::Value GlpkMip::_getSol(int i) const {
   1.225      return glp_mip_col_val(lp, i);
   1.226    }
   1.227  
   1.228 -  MipGlpk::Value MipGlpk::_getSolValue() const {
   1.229 +  GlpkMip::Value GlpkMip::_getSolValue() const {
   1.230      return glp_mip_obj_val(lp);
   1.231    }
   1.232  
   1.233 -  MipGlpk* MipGlpk::_newSolver() const { return new MipGlpk; }
   1.234 -  MipGlpk* MipGlpk::_cloneSolver() const {return new MipGlpk(*this); }
   1.235 +  GlpkMip* GlpkMip::_newSolver() const { return new GlpkMip; }
   1.236 +  GlpkMip* GlpkMip::_cloneSolver() const {return new GlpkMip(*this); }
   1.237  
   1.238 -  const char* MipGlpk::_solverName() const { return "MipGlpk"; }
   1.239 +  const char* GlpkMip::_solverName() const { return "GlpkMip"; }
   1.240  
   1.241 -  void MipGlpk::messageLevel(MessageLevel m) {
   1.242 +  void GlpkMip::messageLevel(MessageLevel m) {
   1.243      _message_level = m;
   1.244    }
   1.245