Class for storing a primal-dual solution with basis information. More...
#include <solbase.h>
Public Member Functions | |
bool | isPrimalFeasible () const |
is the stored solution primal feasible? More... | |
bool | getPrimalSol (VectorBase< R > &vector) const |
gets the primal solution vector; returns true on success More... | |
bool | getSlacks (VectorBase< R > &vector) const |
gets the vector of slack values; returns true on success More... | |
bool | hasPrimalRay () const |
is a primal unbounded ray available? More... | |
bool | getPrimalRaySol (VectorBase< R > &vector) const |
gets the primal unbounded ray if available; returns true on success More... | |
bool | isDualFeasible () const |
is a dual solution available? More... | |
bool | getDualSol (VectorBase< R > &vector) const |
gets the dual solution vector; returns true on success More... | |
bool | getRedCostSol (VectorBase< R > &vector) const |
gets the vector of reduced cost values if available; returns true on success More... | |
bool | hasDualFarkas () const |
is a dual farkas ray available? More... | |
bool | getDualFarkasSol (VectorBase< R > &vector) const |
gets the Farkas proof if available; returns true on success More... | |
int | totalSizePrimal (const int base=2) const |
returns total size of primal solution More... | |
int | totalSizeDual (const int base=2) const |
returns total size of dual solution More... | |
int | dlcmSizePrimal (const int base=2) const |
returns size of least common multiple of denominators in primal solution More... | |
int | dlcmSizeDual (const int base=2) const |
returns size of least common multiple of denominators in dual solution More... | |
int | dmaxSizePrimal (const int base=2) const |
returns size of largest denominator in primal solution More... | |
int | dmaxSizeDual (const int base=2) const |
returns size of largest denominator in dual solution More... | |
void | invalidate () |
invalidate solution More... | |
Private Member Functions | |
SolBase () | |
default constructor only for friends More... | |
SolBase< R > & | operator= (const SolBase< R > &sol) |
assignment operator only for friends More... | |
template<class S > | |
SolBase< R > & | operator= (const SolBase< S > &sol) |
assignment operator only for friends More... | |
Private Attributes | |
VectorBase< R > | _primal |
VectorBase< R > | _slacks |
VectorBase< R > | _primalRay |
VectorBase< R > | _dual |
VectorBase< R > | _redCost |
VectorBase< R > | _dualFarkas |
R | _objVal |
unsigned int | _isPrimalFeasible: 1 |
unsigned int | _hasPrimalRay: 1 |
unsigned int | _isDualFeasible: 1 |
unsigned int | _hasDualFarkas: 1 |
Friends | |
template<class T > | |
class | SoPlexBase |
template<class S > | |
class | SolBase |
Class for storing a primal-dual solution with basis information.
int dlcmSizeDual | ( | const int | base = 2 | ) | const |
int dlcmSizePrimal | ( | const int | base = 2 | ) | const |
int dmaxSizeDual | ( | const int | base = 2 | ) | const |
int dmaxSizePrimal | ( | const int | base = 2 | ) | const |
bool getDualFarkasSol | ( | VectorBase< R > & | vector | ) | const |
bool getDualSol | ( | VectorBase< R > & | vector | ) | const |
bool getPrimalRaySol | ( | VectorBase< R > & | vector | ) | const |
bool getPrimalSol | ( | VectorBase< R > & | vector | ) | const |
bool getRedCostSol | ( | VectorBase< R > & | vector | ) | const |
bool getSlacks | ( | VectorBase< R > & | vector | ) | const |
bool hasDualFarkas | ( | ) | const |
bool hasPrimalRay | ( | ) | const |
void invalidate | ( | ) |
invalidate solution
Definition at line 212 of file solbase.h.
Referenced by SolBase< Rational >::SolBase().
bool isDualFeasible | ( | ) | const |
bool isPrimalFeasible | ( | ) | const |
int totalSizeDual | ( | const int | base = 2 | ) | const |
int totalSizePrimal | ( | const int | base = 2 | ) | const |
|
friend |
|
private |
Definition at line 224 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizeDual(), SolBase< Rational >::dmaxSizeDual(), SolBase< Rational >::getDualSol(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizeDual().
|
private |
Definition at line 226 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizeDual(), SolBase< Rational >::dmaxSizeDual(), SolBase< Rational >::getDualFarkasSol(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizeDual().
|
private |
Definition at line 233 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizeDual(), SolBase< Rational >::dmaxSizeDual(), SolBase< Rational >::getDualFarkasSol(), SolBase< Rational >::hasDualFarkas(), SolBase< Rational >::invalidate(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizeDual().
|
private |
Definition at line 231 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizePrimal(), SolBase< Rational >::dmaxSizePrimal(), SolBase< Rational >::getPrimalRaySol(), SolBase< Rational >::hasPrimalRay(), SolBase< Rational >::invalidate(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizePrimal().
|
private |
Definition at line 232 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizeDual(), SolBase< Rational >::dmaxSizeDual(), SolBase< Rational >::getDualSol(), SolBase< Rational >::getRedCostSol(), SolBase< Rational >::invalidate(), SolBase< Rational >::isDualFeasible(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizeDual().
|
private |
Definition at line 230 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizePrimal(), SolBase< Rational >::dmaxSizePrimal(), SolBase< Rational >::getPrimalSol(), SolBase< Rational >::getSlacks(), SolBase< Rational >::invalidate(), SolBase< Rational >::isPrimalFeasible(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizePrimal().
|
private |
Definition at line 228 of file solbase.h.
Referenced by SolBase< Rational >::operator=().
|
private |
Definition at line 221 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizePrimal(), SolBase< Rational >::dmaxSizePrimal(), SolBase< Rational >::getPrimalSol(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizePrimal().
|
private |
Definition at line 223 of file solbase.h.
Referenced by SolBase< Rational >::dlcmSizePrimal(), SolBase< Rational >::dmaxSizePrimal(), SolBase< Rational >::getPrimalRaySol(), SolBase< Rational >::operator=(), and SolBase< Rational >::totalSizePrimal().
|
private |
Definition at line 225 of file solbase.h.
Referenced by SolBase< Rational >::getRedCostSol(), and SolBase< Rational >::operator=().
|
private |
Definition at line 222 of file solbase.h.
Referenced by SolBase< Rational >::getSlacks(), and SolBase< Rational >::operator=().