COIN-OR::LEMON - Graph Library

source: lemon-0.x/lemon/lp_skeleton.cc @ 2356:57c316cb868b

Last change on this file since 2356:57c316cb868b was 2328:b4931ae52069, checked in by athos, 17 years ago

Query functions have been implemented for GLPK (CPLEX breaks at the moment, I guess): These functions include:
retrieving one element of the coeff. matrix
retrieving one element of the obj function
lower bd for a variable
upper bound for a variable
lower and upper bounds for a row (these can not be handled separately at the moment)
direction of the optimization (is_max() function)

File size: 2.9 KB
RevLine 
[1254]1/* -*- C++ -*-
2 *
[1956]3 * This file is a part of LEMON, a generic C++ optimization library
4 *
5 * Copyright (C) 2003-2006
6 * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
[1359]7 * (Egervary Research Group on Combinatorial Optimization, EGRES).
[1254]8 *
9 * Permission to use, modify and distribute this software is granted
10 * provided that this copyright notice appears in all copies. For
11 * precise terms see the accompanying LICENSE file.
12 *
13 * This software is provided "AS IS" with no warranty of any kind,
14 * express or implied, and with no claim as to its suitability for any
15 * purpose.
16 *
17 */
18
[1313]19#include <lemon/lp_skeleton.h>
[1254]20
21///\file
22///\brief A skeleton file to implement LP solver interfaces
23namespace lemon {
24 
[1364]25  LpSolverBase &LpSkeleton::_newLp()
26  {
[1368]27    LpSolverBase *tmp=0;
28    return *tmp;
[1364]29  }
30 
31  LpSolverBase &LpSkeleton::_copyLp()
32  {
[1368]33    LpSolverBase *tmp=0;
34    return *tmp;
[1364]35  }
36
[1313]37  int LpSkeleton::_addCol()
[1254]38  {
[1273]39    return ++col_num;
[1254]40  }
41 
[1313]42  int LpSkeleton::_addRow()
[1254]43  {
[1273]44    return ++row_num;
[1254]45  }
46 
[1432]47  void LpSkeleton::_eraseCol(int ) {
48  }
49 
50  void LpSkeleton::_eraseRow(int) {
51  }
52
[1895]53  void LpSkeleton::_getColName(int, std::string &) {
54  }
55 
56 
57  void LpSkeleton::_setColName(int, const std::string &) {
58  }
59 
60 
[2312]61  void LpSkeleton::_setRowCoeffs(int, LpRowIterator, LpRowIterator) {
[1254]62  }
63 
[2312]64  void LpSkeleton::_setColCoeffs(int, LpColIterator, LpColIterator) {
[1254]65  }
[1431]66
67  void LpSkeleton::_setCoeff(int, int, Value )
68  {
69  }
70
[2324]71  LpSkeleton::Value LpSkeleton::_getCoeff(int, int)
72  {
73    return 0;
74  }
75
[1431]76
[1362]77  void LpSkeleton::_setColLowerBound(int, Value)
[1254]78  {
79  }
80 
[2328]81  LpSkeleton::Value LpSkeleton::_getColLowerBound(int)
82  {
83    return 0;
84  }
85 
[1362]86  void LpSkeleton::_setColUpperBound(int, Value)
[1254]87  {
88  }
[2328]89
90  LpSkeleton::Value LpSkeleton::_getColUpperBound(int)
91  {
92    return 0;
93  }
[1254]94 
[1405]95//   void LpSkeleton::_setRowLowerBound(int, Value)
96//   {
97//   }
[1254]98 
[1405]99//   void LpSkeleton::_setRowUpperBound(int, Value)
100//   {
101//   }
[1389]102
[1390]103  void LpSkeleton::_setRowBounds(int, Value, Value)
[1389]104  {
105  }
[2328]106
107  void LpSkeleton::_getRowBounds(int, Value&, Value&)
108  {
109  }
[1254]110 
[1362]111  void LpSkeleton::_setObjCoeff(int, Value)
[1254]112  {
113  }
[1263]114
[2326]115  LpSkeleton::Value LpSkeleton::_getObjCoeff(int){
[2324]116    return 0;
117  }
118
[1313]119  void LpSkeleton::_setMax()
[1312]120  {
121  }
[1390]122
[1313]123  void LpSkeleton::_setMin()
[1312]124  {
125  }
126
[2324]127  bool LpSkeleton::_isMax()
128  {
129    return true;
130  }
131
132
[1390]133  void LpSkeleton::_clearObj()
134  {
135  }
136 
[1313]137  LpSkeleton::SolveExitStatus LpSkeleton::_solve()
[1263]138  {
[1293]139    return SOLVED;
[1263]140  }
141
[1362]142  LpSkeleton::Value LpSkeleton::_getPrimal(int)
[1263]143  {
144    return 0;
145  }
[1254]146 
[1796]147  LpSkeleton::Value LpSkeleton::_getDual(int)
148  {
149    return 0;
150  }
151 
[1313]152  LpSkeleton::Value LpSkeleton::_getPrimalValue()
[1312]153  {
154    return 0;
155  }
156 
[1313]157  LpSkeleton::SolutionStatus LpSkeleton::_getPrimalStatus()
[1294]158  {
[1460]159    return UNDEFINED;
160  }
161
162  LpSkeleton::SolutionStatus LpSkeleton::_getDualStatus()
163  {
164    return UNDEFINED;
165  }
166
167  LpSkeleton::ProblemTypes LpSkeleton::_getProblemType()
168  {
169    return UNKNOWN;
[1294]170  }
[1843]171
[1855]172  bool LpSkeleton::_isBasicCol(int)
[1843]173  {
174    return true;
175  }
176
[1254]177} //namespace lemon
178
Note: See TracBrowser for help on using the repository browser.