31 MSG_DEBUG(std::cout <<
"DCHBAS01 SPxBasis::reDim():" 49 MSG_DEBUG(std::cout <<
"DCHBAS03 SPxBasis::reDim(): -->" 116 MSG_ERROR(std::cerr <<
"ECHBAS04 Unknown basis status!" << std::endl;)
135 MSG_DEBUG(std::cout <<
"DCHBAS05 Warning: deleting basic row!\n";)
146 MSG_DEBUG(std::cout <<
"DCHBAS06 Warning: deleting nonbasic row!\n";)
150 for(
int j =
theLP->
dim(); j >= 0; --j)
181 for(i = 0; i < n; ++i)
191 MSG_DEBUG(std::cout <<
"DCHBAS07 Warning: deleting basic row!\n";)
206 for(i = 0; i < n; ++i)
234 if(theLP->
lower(i) == theLP->SPxLP::upper(i))
242 else if(theLP->
maxObj(i) == 0)
247 return (theLP->
maxObj(i) < 0)
318 MSG_ERROR(std::cerr <<
"ECHBAS08 Unknown basis status!" << std::endl;)
343 for(
int j =
theLP->
dim(); j >= 0; --j)
375 for(i = 0; i < n; ++i)
391 for(i = 0; i < n; ++i)
Exception class for things that should NEVER happen.This class is derived from the SoPlex exception b...
void addedRows(int n)
inform SPxBasis, that n new rows had been added.
Basis is not known to be dual nor primal feasible.
primal variable is fixed to both bounds
void invalidate()
invalidates actual basis.
const VectorBase< R > & upper() const
Returns upper bound vector.
THREADLOCAL const Real infinity
void removedCols(const int perm[])
inform SPxBasis that columns in perm with negative entry were removed.
bool has(const SPxRowId &id) const
Returns the row number of the row with identifier id.
Basis is optimal, i.e. dual and primal feasible.
Status & rowStatus(int i)
void changedCol(int)
inform SPxBasis that a column had been changed.
static SPxBasis::Desc::Status primalColStatus(int i, const SPxLP *theLP)
int dim() const
dimension of basis matrix.
void reSize(int rowDim, int colDim)
resets dimensions.
Ids for LP columns.Class SPxColId provides DataKeys for the column indices of an SPxLP.
bool factorized
true iff factor = matrix .
void changedElement(int, int)
inform SPxBasis that a matrix entry had been changed.
Desc::Status dualRowStatus(int i) const
dual Status for the i'th row variable of the loaded LP.
int nCols() const
returns number of columns.
void changedRow(int)
inform SPxBasis that a row had been changed.
Wrapper for different output streams and verbosity levels.
int nRows() const
Returns number of rows in LP.
void removedCol(int i)
inform SPxBasis that column i had been removed.
primal variable is set to its upper bound
Generic Ids for LP rows or columns.Both SPxColIds and SPxRowIds may be treated uniformly as SPxIds: ...
SPxStatus status() const
returns current SPxStatus.
void reDim()
resizes internal arrays.
void setStatus(SPxStatus stat)
sets basis SPxStatus to stat.
void removedRows(const int perm[])
inform SPxBasis that rows in perm with negative entry were removed.
#define MSG_ERROR(x)
Prints out message x if the verbosity level is at least SPxOut::ERROR.
bool isBasic(SPxBasis::Desc::Status stat) const
does stat describe a basic index ?
primal variable is left free, but unset
Status & colStatus(int i)
#define MSG_INFO3(spxout, x)
Prints out message x if the verbosity level is at least SPxOut::INFO3.
void loadMatrixVecs()
loads matrix according to the SPxIds stored in theBaseId.
Debugging, floating point type and parameter definitions.
void restoreInitialBasis()
Restores initial basis.
Desc thedesc
the basis' Descriptor
Everything should be within this namespace.
Saving LPs in a form suitable for SoPlex.Class SPxLPBase provides the data structures required for sa...
SPxOut * spxout
message handler
DataArray< SPxId > theBaseId
SPxIds of basic vectors.
primal variable is set to its lower bound
const VectorBase< R > & maxObj() const
Returns objective vector for maximization problem.
void removedRow(int i)
inform SPxBasis that row i had been removed.
int nCols() const
Returns number of columns in LP.
Ids for LP rows.Class SPxRowId provides DataKeys for the row indices of an SPxLP. ...
const SVector & vector(int i) const
i 'th vector.
int nRows() const
returns number of rows.
Status
Status of a variable.
LP has been proven to be primal unbounded.
const VectorBase< R > & lower() const
Returns (internal and possibly scaled) lower bound vector.
Representation rep() const
return the current basis representation.
columnwise representation.
Basis is primal feasible.
bool matrixIsSetup
true iff the pointers in matrix are set up correctly.
void addedCols(int n)
inform SPxBasis that n new columns had been added.
LP has been proven to be primal infeasible.
No Problem has been loaded to the basis.
DataArray< const SVector *> matrix
pointers to the vectors of the basis matrix.