35 #ifndef OPENMS_DATASTRUCTURES_LPWRAPPER_H 36 #define OPENMS_DATASTRUCTURES_LPWRAPPER_H 41 #include <OpenMS/OpenMSConfig.h> 42 #include <OpenMS/config.h> 50 #define GLP_PROB_DEFINED 54 #if OPENMS_GLPK_VERSION_MINOR < 48 57 double _opaque_prob[100];
75 message_level(3), branching_tech(4), backtrack_tech(3),
76 preprocessing_tech(2), enable_feas_pump_heuristic(true), enable_gmi_cuts(true),
77 enable_mir_cuts(true), enable_cov_cuts(true), enable_clq_cuts(true), mip_gap(0.0),
78 time_limit((
std::numeric_limits<
Int>::max)()), output_freq(5000), output_delay(10000), enable_presolve(true),
79 enable_binarization(true)
132 #if COINOR_SOLVER == 1 150 Int addRow(std::vector<Int> row_indices, std::vector<double> row_values,
const String& name);
154 Int addColumn(std::vector<Int> column_indices, std::vector<double> column_values,
const String& name);
168 Int addRow(std::vector<Int>& row_indices, std::vector<double>& row_values,
const String& name,
double lower_bound,
double upper_bound,
Type type);
180 Int addColumn(std::vector<Int>& column_indices, std::vector<double>& column_values,
const String& name,
double lower_bound,
double upper_bound,
Type type);
183 void deleteRow(
Int index);
185 void setColumnName(
Int index,
const String& name);
195 double getColumnUpperBound(
Int index);
197 double getColumnLowerBound(
Int index);
199 double getRowUpperBound(
Int index);
201 double getRowLowerBound(
Int index);
203 void setRowName(
Int index,
const String& name);
213 void setColumnBounds(
Int index,
double lower_bound,
double upper_bound,
Type type);
223 void setRowBounds(
Int index,
double lower_bound,
double upper_bound,
Type type);
242 void setObjective(
Int index,
double obj_value);
244 double getObjective(
Int index);
251 void setObjectiveSense(
Sense sense);
252 Sense getObjectiveSense();
255 Int getNumberOfColumns();
257 Int getNumberOfRows();
259 void setElement(
Int row_index,
Int column_index,
double value);
260 double getElement(
Int row_index,
Int column_index);
299 double getObjectiveValue();
300 double getColumnValue(
Int index);
302 Int getNumberOfNonZeroEntriesInRow(
Int idx);
303 void getMatrixRow(
Int idx, std::vector<Int>& indexes);
307 void setSolver(
const SOLVER s);
313 #if COINOR_SOLVER == 1 315 std::vector<double> solution_;
327 #endif // OPENMS_DATASTRUCTURES_LPWRAPPER_H bool enable_gmi_cuts
Definition: LPWrapper.h:88
WriteFormat
Definition: LPWrapper.h:122
Int output_freq
Definition: LPWrapper.h:94
A more convenient string class.
Definition: String.h:57
SOLVER
Definition: LPWrapper.h:129
Definition: LPWrapper.h:105
double mip_gap
Definition: LPWrapper.h:92
Definition: LPWrapper.h:104
Definition: LPWrapper.h:125
bool enable_clq_cuts
Definition: LPWrapper.h:91
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
Struct that holds the parameters of the LP solver.
Definition: LPWrapper.h:72
Definition: LPWrapper.h:66
Sense
Definition: LPWrapper.h:116
bool enable_cov_cuts
Definition: LPWrapper.h:90
Int time_limit
Definition: LPWrapper.h:93
Int message_level
Definition: LPWrapper.h:83
Int branching_tech
Definition: LPWrapper.h:84
SolverParam()
Definition: LPWrapper.h:74
bool enable_presolve
Definition: LPWrapper.h:96
Definition: LPWrapper.h:112
SOLVER solver_
Definition: LPWrapper.h:320
Int backtrack_tech
Definition: LPWrapper.h:85
Type
Definition: LPWrapper.h:100
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:128
SolverStatus
Definition: LPWrapper.h:137
Definition: LPWrapper.h:103
Int preprocessing_tech
Definition: LPWrapper.h:86
glp_prob * lp_problem_
Definition: LPWrapper.h:318
VariableType
Definition: LPWrapper.h:109
int Int
Signed integer type.
Definition: Types.h:103
bool enable_mir_cuts
Definition: LPWrapper.h:89
bool enable_feas_pump_heuristic
Definition: LPWrapper.h:87
Int output_delay
Definition: LPWrapper.h:95
bool enable_binarization
Definition: LPWrapper.h:97
Definition: LPWrapper.h:55