This class holds the results after solving an LP relaxation. More...
#include <BCP_lp_result.hpp>
Public Member Functions | |
Constructor and destructor | |
BCP_lp_result () | |
The default constructor initializes an empty solution, i.e., one which holds neither an exact nor an approximate solution. | |
~BCP_lp_result () | |
The destructor deletes the data members if they are private copies. | |
Query methods for the solution. These methods (except for | |
int & | termcode () |
int | termcode () const |
int & | iternum () |
int | iternum () const |
double & | objval () |
double | objval () const |
double * | x () |
const double * | x () const |
double * | pi () |
const double * | pi () const |
double * | dj () |
const double * | dj () const |
double * | lhs () |
const double * | lhs () const |
Query methods for general solver information. | |
double | primalTolerance () const |
Return the primal tolerance of the solver. | |
double | dualTolerance () const |
Return the dual tolerance of the solver. | |
Modifying methods | |
void | get_results (OsiSolverInterface &lp_solver) |
Get the result from the LP solver. | |
void | fake_objective_value (const double val) |
Set the lower bound and the exact and approximate objective values to the value given in the argument. | |
Private Member Functions | |
Disabled methods | |
BCP_lp_result (const BCP_lp_result &) | |
The copy constructor is declared but not defined to disable it. | |
BCP_lp_result & | operator= (const BCP_lp_result &) |
The assignment operator is declared but not defined to disable it. | |
Private Attributes | |
Data members storing general information about the solver. | |
double | _lower_bound |
The zero-tolerance used by the LP solver for the primal solution. | |
double | _primal_tolerance |
The zero-tolerance used by the LP solver for the primal solution. | |
double | _dual_tolerance |
The zero-tolerance used by the LP solver for the dual solution. | |
Data members holding information about the LP solution. | |
int | _termcode |
The termination code of the algorithm. | |
int | _iternum |
The number of iterations the algorithm took (however the algorithm used interprets "iteration"). | |
double | _objval |
The solution value. | |
double * | _x |
The primal solution. | |
double * | _pi |
The dual solution. | |
double * | _dj |
The reduced costs. | |
double * | _lhs |
The left hand sides. |
This class holds the results after solving an LP relaxation.
There may be an exact and/or an approximate solution.
Definition at line 38 of file BCP_lp_result.hpp.
BCP_lp_result::BCP_lp_result | ( | const BCP_lp_result & | ) | [private] |
The copy constructor is declared but not defined to disable it.
BCP_lp_result::BCP_lp_result | ( | ) | [inline] |
The default constructor initializes an empty solution, i.e., one which holds neither an exact nor an approximate solution.
Definition at line 84 of file BCP_lp_result.hpp.
BCP_lp_result::~BCP_lp_result | ( | ) | [inline] |
The destructor deletes the data members if they are private copies.
Definition at line 90 of file BCP_lp_result.hpp.
BCP_lp_result& BCP_lp_result::operator= | ( | const BCP_lp_result & | ) | [private] |
The assignment operator is declared but not defined to disable it.
int& BCP_lp_result::termcode | ( | ) | [inline] |
Definition at line 105 of file BCP_lp_result.hpp.
int BCP_lp_result::termcode | ( | ) | const [inline] |
Definition at line 106 of file BCP_lp_result.hpp.
int& BCP_lp_result::iternum | ( | ) | [inline] |
Definition at line 108 of file BCP_lp_result.hpp.
int BCP_lp_result::iternum | ( | ) | const [inline] |
Definition at line 109 of file BCP_lp_result.hpp.
double& BCP_lp_result::objval | ( | ) | [inline] |
Definition at line 111 of file BCP_lp_result.hpp.
double BCP_lp_result::objval | ( | ) | const [inline] |
Definition at line 112 of file BCP_lp_result.hpp.
double* BCP_lp_result::x | ( | ) | [inline] |
Definition at line 114 of file BCP_lp_result.hpp.
const double* BCP_lp_result::x | ( | ) | const [inline] |
Definition at line 115 of file BCP_lp_result.hpp.
double* BCP_lp_result::pi | ( | ) | [inline] |
Definition at line 117 of file BCP_lp_result.hpp.
const double* BCP_lp_result::pi | ( | ) | const [inline] |
Definition at line 118 of file BCP_lp_result.hpp.
double* BCP_lp_result::dj | ( | ) | [inline] |
Definition at line 120 of file BCP_lp_result.hpp.
const double* BCP_lp_result::dj | ( | ) | const [inline] |
Definition at line 121 of file BCP_lp_result.hpp.
double* BCP_lp_result::lhs | ( | ) | [inline] |
Definition at line 123 of file BCP_lp_result.hpp.
const double* BCP_lp_result::lhs | ( | ) | const [inline] |
Definition at line 124 of file BCP_lp_result.hpp.
double BCP_lp_result::primalTolerance | ( | ) | const [inline] |
Return the primal tolerance of the solver.
Definition at line 130 of file BCP_lp_result.hpp.
double BCP_lp_result::dualTolerance | ( | ) | const [inline] |
Return the dual tolerance of the solver.
Definition at line 132 of file BCP_lp_result.hpp.
void BCP_lp_result::get_results | ( | OsiSolverInterface & | lp_solver | ) |
Get the result from the LP solver.
Non-vector members will get their values from the LP solver. Vector members are copied out from the LP solver.
void BCP_lp_result::fake_objective_value | ( | const double | val | ) | [inline] |
Set the lower bound and the exact and approximate objective values to the value given in the argument.
Definition at line 143 of file BCP_lp_result.hpp.
double BCP_lp_result::_lower_bound [private] |
The zero-tolerance used by the LP solver for the primal solution.
Definition at line 51 of file BCP_lp_result.hpp.
double BCP_lp_result::_primal_tolerance [private] |
The zero-tolerance used by the LP solver for the primal solution.
Definition at line 53 of file BCP_lp_result.hpp.
double BCP_lp_result::_dual_tolerance [private] |
The zero-tolerance used by the LP solver for the dual solution.
Definition at line 55 of file BCP_lp_result.hpp.
int BCP_lp_result::_termcode [private] |
The termination code of the algorithm.
Definition at line 61 of file BCP_lp_result.hpp.
int BCP_lp_result::_iternum [private] |
The number of iterations the algorithm took (however the algorithm used interprets "iteration").
Definition at line 64 of file BCP_lp_result.hpp.
double BCP_lp_result::_objval [private] |
The solution value.
Depending on whether the solver solves to optimality or just delivers an approximate solution this value is either the optimum or a lower bound on the optimum.
Definition at line 68 of file BCP_lp_result.hpp.
double* BCP_lp_result::_x [private] |
The primal solution.
Definition at line 70 of file BCP_lp_result.hpp.
double* BCP_lp_result::_pi [private] |
The dual solution.
Definition at line 72 of file BCP_lp_result.hpp.
double* BCP_lp_result::_dj [private] |
The reduced costs.
Definition at line 74 of file BCP_lp_result.hpp.
double* BCP_lp_result::_lhs [private] |
The left hand sides.
Definition at line 76 of file BCP_lp_result.hpp.