spxmainsm.h
Go to the documentation of this file.
117 virtual bool checkBasisDim(DataArray<SPxSolver::VarStatus> rows, DataArray<SPxSolver::VarStatus> cols) const; 372 ForceConstraintPS(const SPxLP& lp, int _i, bool lhsFixed, DataArray<bool>& fixCols, DataArray<Real>& lo, DataArray<Real>& up) 391 m_objs[k] = (lp.spxSense() == SPxLP::MINIMIZE ? lp.obj(m_row.index(k)) : -lp.obj(m_row.index(k))); 456 FixVariablePS(const SPxLP& lp, SPxMainSM& simplifier, int _j, const Real val, bool correctIdx = true) 985 DuplicateColsPS(const SPxLP& lp, int _j, int _k, Real scale, DataArray<int> perm, bool isFirst = false, bool isTheLast = false) 1087 Array<DSVector> m_dupRows; ///< arrange duplicate rows using bucket sort w.r.t. their pClass values 1131 /// handles the fixing of a variable. correctIdx is true iff the index mapping has to be updated. 1146 /// returns for a given row index of the (reduced) LP the corresponding row index in the unsimplified LP. 1151 /// returns for a given column index of the (reduced) LP the corresponding column index in the unsimplified LP. 1349 virtual void getBasis(SPxSolver::VarStatus rows[], SPxSolver::VarStatus cols[], const int rowsSize = -1, const int colsSize = -1) const
bool isNotZero(Real a, Real eps=Param::epsilon()) returns true iff |a| > eps Definition: spxdefines.h:413 Exception class for things that should NEVER happen.This class is derived from the SoPlex exception b... Definition: exceptions.h:109 Definition: spxmainsm.h:1066 int cIdx(int j) const returns for a given column index of the (reduced) LP the corresponding column index in the unsimplifi... Definition: spxmainsm.h:1152 Safe arrays of data objects.Class DataArray provides safe arrays of Data Objects. For general C++ obj... Definition: dataarray.h:63 Result removeRowSingleton(SPxLP &lp, const SVector &row, int &i) remove row singletons. Definition: spxmainsm.cpp:1571 EmptyConstraintPS(const SPxLP &lp, int _i) Definition: spxmainsm.h:231 ZeroObjColSingletonPS & operator=(const ZeroObjColSingletonPS &rhs) assignment operator Definition: spxmainsm.h:685 Definition: spxmainsm.h:1054 virtual void getBasis(SPxSolver::VarStatus rows[], SPxSolver::VarStatus cols[], const int rowsSize=-1, const int colsSize=-1) const get optimal basis. Definition: spxmainsm.h:1349 virtual Result result() const returns result status of the simplification Definition: spxmainsm.h:1302 virtual void unsimplify(const Vector &x, const Vector &y, const Vector &s, const Vector &r, const SPxSolver::VarStatus rows[], const SPxSolver::VarStatus cols[]) reconstructs an optimal solution for the unsimplified LP. Definition: spxmainsm.cpp:3974 DataArray< int > m_rIdxLocalOld Definition: spxmainsm.h:889 Exception classes for SoPlex. FreeZeroObjVariablePS(const SPxLP &lp, int _j, bool loFree, SVector col_idx_sorted) Definition: spxmainsm.h:578 const SVectorBase< R > & colVector(int i) const Returns column vector of column i. Definition: spxlpbase.h:341 virtual void execute(DVector &x, DVector &y, DVector &s, DVector &r, DataArray< SPxSolver::VarStatus > &cBasis, DataArray< SPxSolver::VarStatus > &rBasis) const =0 executes the postsolving. Safe arrays of arbitrary types.Class Array provides safe arrays of arbitrary type. Array elements are accessed just like ordinary C++ array elements by means of the index operator[](). Safety is provided by. Definition: array.h:62 virtual Result simplify(SPxLP &lp, Real eps, Real delta) simplify SPxLP lp with identical primal and dual feasibility tolerance. Definition: spxmainsm.h:1290 virtual SPxSolver::VarStatus getBasisColStatus(int j) const gets basis status for a single column. Definition: spxmainsm.h:1343 FixVariablePS(const SPxLP &lp, SPxMainSM &simplifier, int _j, const Real val, bool correctIdx=true) Definition: spxmainsm.h:456 RowSingletonPS & operator=(const RowSingletonPS &rhs) assignment operator Definition: spxmainsm.h:329 Base class for postsolving operations.Class PostStep is an abstract base class providing the interfac... Definition: spxmainsm.h:73 virtual const Vector & unsimplifiedDual() returns a reference to the unsimplified dual solution. Definition: spxmainsm.h:1319 DuplicateRowsPS & operator=(const DuplicateRowsPS &rhs) assignment operator Definition: spxmainsm.h:942 DataArray< Real > m_oldLowers Definition: spxmainsm.h:364 void handleExtremes(SPxLP &lp) handles extreme values by setting them to zero or infinity. Definition: spxmainsm.cpp:1268 virtual bool checkBasisDim(DataArray< SPxSolver::VarStatus > rows, DataArray< SPxSolver::VarStatus > cols) const Definition: spxmainsm.cpp:62 FreeColSingletonPS(const SPxLP &lp, SPxMainSM &simplifier, int _j, int _i, Real slackVal) Definition: spxmainsm.h:725 DataArray< Real > m_oldUppers Definition: spxmainsm.h:365 ZeroObjColSingletonPS(const SPxLP &lp, const SPxMainSM &, int _j, int _i) Definition: spxmainsm.h:661 LP simplification base class. Definition: spxmainsm.h:1060 Definition: spxmainsm.h:1057 void fixColumn(SPxLP &lp, int i, bool correctIdx=true) handles the fixing of a variable. correctIdx is true iff the index mapping has to be updated... Definition: spxmainsm.cpp:3691 FreeZeroObjVariablePS & operator=(const FreeZeroObjVariablePS &rhs) assignment operator Definition: spxmainsm.h:619 Postsolves the case when constraints are removed due to a variable with zero objective that is free i... Definition: spxmainsm.h:563 int rIdx(int i) const returns for a given row index of the (reduced) LP the corresponding row index in the unsimplified LP... Definition: spxmainsm.h:1147 SPxSimplifier & operator=(const SPxSimplifier &rhs) assignment operator Definition: spxsimplifier.h:133 Array< DSVector > m_classSetCols stores parallel classes with non-zero row entry Definition: spxmainsm.h:1086 virtual PostStep * clone() const =0 clone function for polymorphism FreeConstraintPS(const SPxLP &lp, int _i) Definition: spxmainsm.h:181 Result duplicateCols(SPxLP &lp, bool &again) removes duplicate columns Definition: spxmainsm.cpp:3315 Result simplifyRows(SPxLP &lp, bool &again) performs simplification steps on the rows of the LP. Definition: spxmainsm.cpp:1644 DuplicateColsPS & operator=(const DuplicateColsPS &rhs) assignment operator Definition: spxmainsm.h:1013 LP simplification abstract base class.Instances of classes derived from SPxSimplifier may be loaded t... Definition: spxsimplifier.h:41 int operator()(const SVector::Element &e1, const SVector::Element &e2) const Definition: spxmainsm.h:1373 DuplicateColsPS(const SPxLP &lp, int _j, int _k, Real scale, DataArray< int > perm, bool isFirst=false, bool isTheLast=false) Definition: spxmainsm.h:985 ForceConstraintPS(const SPxLP &lp, int _i, bool lhsFixed, DataArray< bool > &fixCols, DataArray< Real > &lo, DataArray< Real > &up) Definition: spxmainsm.h:372 virtual bool isUnsimplified() const specifies whether an optimal solution has already been unsimplified. Definition: spxmainsm.h:1308 Postsolves doubleton equations combined with a column singleton. Definition: spxmainsm.h:779 ForceConstraintPS & operator=(const ForceConstraintPS &rhs) assignment operator Definition: spxmainsm.h:414 #define DEFAULT_EPS_ZERO default allowed additive zero: 1.0 + EPS_ZERO == 1.0 Definition: spxdefines.h:212 comparator for class SVector::Element: compare nonzeros according to value Definition: spxmainsm.h:1368 DoubletonEquationPS(const SPxLP &lp, int _j, int _k, int _i, Real oldLo, Real oldUp) Definition: spxmainsm.h:804 virtual SPxSolver::VarStatus getBasisRowStatus(int i) const gets basis status for a single row. Definition: spxmainsm.h:1337 Array< DSVector > m_dupCols arrange duplicate columns w.r.t. their pClass values Definition: spxmainsm.h:1088 Debugging, floating point type and parameter definitions. bool EQ(Real a, Real b, Real eps=Param::epsilon()) returns true iff |a-b| <= eps Definition: spxdefines.h:371 Postsolves column singletons with zero objective. Definition: spxmainsm.h:647 Everything should be within this namespace. bool EQrel(Real a, Real b, Real eps=Param::epsilon()) returns true iff |relDiff(a,b)| <= eps Definition: spxdefines.h:419 Definition: spxmainsm.h:1058 RowSingletonPS(const SPxLP &lp, int _i, int _j, bool strictLo, bool strictUp, Real newLo, Real newUp, Real oldLo, Real oldUp) Definition: spxmainsm.h:290 DuplicateRowsPS(const SPxLP &lp, int _i, int maxLhsIdx, int minRhsIdx, const DSVector &dupRows, const DataArray< Real > scale, const DataArray< int > perm, const DataArray< bool > isLhsEqualRhs, bool isTheLast, bool isFixedRow, bool isFirst=false) Definition: spxmainsm.h:894 Definition: spxmainsm.h:1064 Save arrays of arbitrary types. comparator for class SVector::Element: compare nonzeros according to index Definition: spxmainsm.h:1384 virtual const Vector & unsimplifiedPrimal() returns a reference to the unsimplified primal solution. Definition: spxmainsm.h:1313 FreeColSingletonPS & operator=(const FreeColSingletonPS &rhs) assignment operator Definition: spxmainsm.h:754 virtual const Vector & unsimplifiedRedCost() returns a reference to the unsimplified reduced costs. Definition: spxmainsm.h:1331 DataArray< bool > m_isLhsEqualRhs Definition: spxmainsm.h:891 int operator()(const SVector::Element &e1, const SVector::Element &e2) const Definition: spxmainsm.h:1389 FixBoundsPS(const SPxLP &lp, int j, Real val) Definition: spxmainsm.h:513 Result simplifyDual(SPxLP &lp, bool &again) performs simplification steps on the LP based on dual concepts. Definition: spxmainsm.cpp:2707 Definition: spxmainsm.h:1055 const SVectorBase< R > & rowVector(int i) const Gets row vector of row i. Definition: spxlpbase.h:212 friend class FreeZeroObjVariablePS Definition: spxmainsm.h:1040 virtual const Vector & unsimplifiedSlacks() returns a reference to the unsimplified slack values. Definition: spxmainsm.h:1325 friend class ZeroObjColSingletonPS Definition: spxmainsm.h:1041 Definition: spxmainsm.h:1059 Definition: spxmainsm.h:1062 FreeConstraintPS & operator=(const FreeConstraintPS &rhs) assignment operator Definition: spxmainsm.h:197 Definition: timer.h:102 RowObjPS(const SPxLP &lp, int _i, int _j) Definition: spxmainsm.h:136 Result simplifyCols(SPxLP &lp, bool &again) performs simplification steps on the columns of the LP. Definition: spxmainsm.cpp:2180 Array< DSVector > m_dupRows arrange duplicate rows using bucket sort w.r.t. their pClass values Definition: spxmainsm.h:1087 EmptyConstraintPS & operator=(const EmptyConstraintPS &rhs) assignment operator Definition: spxmainsm.h:245 DoubletonEquationPS & operator=(const DoubletonEquationPS &rhs) assignment operator Definition: spxmainsm.h:850 LP simplifier for removing uneccessary row/columns.This SPxSimplifier is mainly based on the paper "P... Definition: spxmainsm.h:60 Array< DSVector > m_classSetRows stores parallel classes with non-zero colum entry Definition: spxmainsm.h:1085 Definition: spxmainsm.h:1056 |