SoPlex Documentation
Loading...
Searching...
No Matches
SPxMainSM< R >::PostStep Class Referenceabstract

Base class for postsolving operations. More...

Inheritance diagram for SPxMainSM< R >::PostStep:
SPxMainSM< R >::AggregationPS SPxMainSM< R >::DoubletonEquationPS SPxMainSM< R >::DuplicateColsPS SPxMainSM< R >::DuplicateRowsPS SPxMainSM< R >::EmptyConstraintPS SPxMainSM< R >::FixBoundsPS SPxMainSM< R >::FixVariablePS SPxMainSM< R >::ForceConstraintPS SPxMainSM< R >::FreeColSingletonPS SPxMainSM< R >::FreeConstraintPS SPxMainSM< R >::FreeZeroObjVariablePS SPxMainSM< R >::MultiAggregationPS SPxMainSM< R >::RowObjPS SPxMainSM< R >::RowSingletonPS SPxMainSM< R >::TightenBoundsPS SPxMainSM< R >::ZeroObjColSingletonPS

Public Member Functions

 PostStep (const char *p_name, std::shared_ptr< Tolerances > tols, int nR=0, int nC=0)
 constructor.
 
 PostStep (const PostStep &old)
 copy constructor.
 
PostStepoperator= (const PostStep &)
 assignment operator
 
virtual ~PostStep ()
 destructor.
 
virtual const char * getName () const
 get name of simplifying step.
 
virtual PostStepclone () const =0
 clone function for polymorphism
 
virtual void execute (VectorBase< R > &x, VectorBase< R > &y, VectorBase< R > &s, VectorBase< R > &r, DataArray< typename SPxSolverBase< R >::VarStatus > &cBasis, DataArray< typename SPxSolverBase< R >::VarStatus > &rBasis, bool isOptimal) const =0
 executes the postsolving.
 
virtual bool checkBasisDim (DataArray< typename SPxSolverBase< R >::VarStatus > rows, DataArray< typename SPxSolverBase< R >::VarStatus > cols) const
 
virtual R feastol () const
 
virtual R epsilon () const
 

Private Attributes

const char * m_name
 name of the simplifier
 
int nCols
 number of cols
 
int nRows
 number of rows
 
std::shared_ptr< Tolerances_tolerances
 0-epsilon of this poststep
 

Detailed Description

template<class R>
class soplex::SPxMainSM< R >::PostStep

Base class for postsolving operations.

Class PostStep is an abstract base class providing the interface for operations in the postsolving process.

Definition at line 84 of file spxmainsm.h.

Constructor & Destructor Documentation

◆ PostStep() [1/2]

template<class R>
PostStep ( const char * p_name,
std::shared_ptr< Tolerances > tols,
int nR = 0,
int nC = 0 )

constructor.

Definition at line 98 of file spxmainsm.h.

References _tolerances, m_name, nCols, and nRows.

Referenced by SPxMainSM< R >::AggregationPS::AggregationPS(), SPxMainSM< R >::AggregationPS::AggregationPS(), SPxMainSM< R >::AggregationPS::clone(), SPxMainSM< R >::DoubletonEquationPS::clone(), SPxMainSM< R >::DuplicateColsPS::clone(), SPxMainSM< R >::DuplicateRowsPS::clone(), SPxMainSM< R >::EmptyConstraintPS::clone(), SPxMainSM< R >::FixBoundsPS::clone(), SPxMainSM< R >::FixVariablePS::clone(), SPxMainSM< R >::ForceConstraintPS::clone(), SPxMainSM< R >::FreeColSingletonPS::clone(), SPxMainSM< R >::FreeConstraintPS::clone(), SPxMainSM< R >::FreeZeroObjVariablePS::clone(), SPxMainSM< R >::MultiAggregationPS::clone(), clone(), SPxMainSM< R >::RowObjPS::clone(), SPxMainSM< R >::RowSingletonPS::clone(), SPxMainSM< R >::TightenBoundsPS::clone(), SPxMainSM< R >::ZeroObjColSingletonPS::clone(), SPxMainSM< R >::DoubletonEquationPS::DoubletonEquationPS(), SPxMainSM< R >::DoubletonEquationPS::DoubletonEquationPS(), SPxMainSM< R >::DuplicateColsPS::DuplicateColsPS(), SPxMainSM< R >::DuplicateColsPS::DuplicateColsPS(), SPxMainSM< R >::DuplicateRowsPS::DuplicateRowsPS(), SPxMainSM< R >::DuplicateRowsPS::DuplicateRowsPS(), SPxMainSM< R >::EmptyConstraintPS::EmptyConstraintPS(), SPxMainSM< R >::EmptyConstraintPS::EmptyConstraintPS(), SPxMainSM< R >::FixBoundsPS::FixBoundsPS(), SPxMainSM< R >::FixBoundsPS::FixBoundsPS(), SPxMainSM< R >::FixVariablePS::FixVariablePS(), SPxMainSM< R >::FixVariablePS::FixVariablePS(), SPxMainSM< R >::ForceConstraintPS::ForceConstraintPS(), SPxMainSM< R >::ForceConstraintPS::ForceConstraintPS(), SPxMainSM< R >::FreeColSingletonPS::FreeColSingletonPS(), SPxMainSM< R >::FreeColSingletonPS::FreeColSingletonPS(), SPxMainSM< R >::FreeConstraintPS::FreeConstraintPS(), SPxMainSM< R >::FreeConstraintPS::FreeConstraintPS(), SPxMainSM< R >::FreeZeroObjVariablePS::FreeZeroObjVariablePS(), SPxMainSM< R >::FreeZeroObjVariablePS::FreeZeroObjVariablePS(), SPxMainSM< R >::MultiAggregationPS::MultiAggregationPS(), SPxMainSM< R >::MultiAggregationPS::MultiAggregationPS(), operator=(), PostStep(), SPxMainSM< R >::RowObjPS::RowObjPS(), SPxMainSM< R >::RowObjPS::RowObjPS(), SPxMainSM< R >::RowSingletonPS::RowSingletonPS(), SPxMainSM< R >::RowSingletonPS::RowSingletonPS(), SPxMainSM< R >::TightenBoundsPS::TightenBoundsPS(), SPxMainSM< R >::TightenBoundsPS::TightenBoundsPS(), SPxMainSM< R >::ZeroObjColSingletonPS::ZeroObjColSingletonPS(), and SPxMainSM< R >::ZeroObjColSingletonPS::ZeroObjColSingletonPS().

◆ PostStep() [2/2]

template<class R>
PostStep ( const PostStep & old)

copy constructor.

Definition at line 106 of file spxmainsm.h.

References _tolerances, m_name, nCols, nRows, and PostStep().

◆ ~PostStep()

template<class R>
virtual ~PostStep ( )
virtual

destructor.

Definition at line 119 of file spxmainsm.h.

References m_name.

Member Function Documentation

◆ checkBasisDim()

template<class R>
virtual bool checkBasisDim ( DataArray< typename SPxSolverBase< R >::VarStatus > rows,
DataArray< typename SPxSolverBase< R >::VarStatus > cols ) const
virtual

◆ clone()

◆ epsilon()

◆ execute()

◆ feastol()

template<class R>
virtual R feastol ( ) const
virtual

Definition at line 144 of file spxmainsm.h.

References _tolerances.

◆ getName()

template<class R>
virtual const char * getName ( ) const
virtual

get name of simplifying step.

Definition at line 124 of file spxmainsm.h.

References m_name.

◆ operator=()

Member Data Documentation

◆ _tolerances

template<class R>
std::shared_ptr<Tolerances> _tolerances
private

0-epsilon of this poststep

Definition at line 94 of file spxmainsm.h.

Referenced by epsilon(), feastol(), PostStep(), and PostStep().

◆ m_name

template<class R>
const char* m_name
private

name of the simplifier

Definition at line 88 of file spxmainsm.h.

Referenced by getName(), PostStep(), PostStep(), and ~PostStep().

◆ nCols

◆ nRows