SoPlex
Loading...
Searching...
No Matches
SPxStarter< R > Class Template Referenceabstract

SoPlex start basis generation base class. More...

#include <spxstarter.h>

Inheritance diagram for SPxStarter< R >:
SPxWeightST< R > SPxVectorST< R > SPxSumST< R >

Public Member Functions

virtual void setTolerances (const std::shared_ptr< Tolerances > &tolerances)
 set the tolerances to be used by the starter
virtual const std::shared_ptr< Tolerances > & tolerances () const
 get the toelrances used by the starter
Access
virtual const char * getName () const
 get name of starter.
Starting
virtual void generate (SPxSolverBase< R > &base)=0
 generates start basis for loaded basis.
Misc
virtual bool isConsistent () const
 checks consistency.

Private Member Functions

Blocked
 SPxStarter ()
 we have no default constructor.

Data

const char * m_name
 name of the starter
std::shared_ptr< Tolerances_tolerances
 tolerances for the starter
 SPxStarter (const char *name)
 constructor
 SPxStarter (const SPxStarter &old)
 copy constructor
SPxStarteroperator= (const SPxStarter &rhs)
 assignment operator
virtual ~SPxStarter ()
 destructor.
virtual SPxStarterclone () const =0
 clone function for polymorphism

Detailed Description

template<class R>
class soplex::SPxStarter< R >

SoPlex start basis generation base class.

SPxStarter is the virtual base class for classes generating a starter basis for the Simplex solver SoPlex. When a SPxStarter object has been loaded to a SoPlex solver, the latter will call method generate() in order to have a start basis generated. Implementations of method generate() must terminate by loading the generated basis to SoPlex. Loaded bases must be nonsingular.

Definition at line 51 of file spxstarter.h.

Constructor & Destructor Documentation

◆ SPxStarter() [1/3]

template<class R>
SPxStarter ( const char * name)
explicit

◆ SPxStarter() [2/3]

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

copy constructor

Definition at line 74 of file spxstarter.h.

References m_name, and SPxStarter().

◆ ~SPxStarter()

template<class R>
virtual ~SPxStarter ( )
virtual

destructor.

Definition at line 88 of file spxstarter.h.

References m_name.

◆ SPxStarter() [3/3]

template<class R>
SPxStarter ( )
private

we have no default constructor.

Member Function Documentation

◆ clone()

template<class R>
virtual SPxStarter * clone ( ) const
pure virtual

clone function for polymorphism

Implemented in SPxSumST< R >, SPxVectorST< R >, and SPxWeightST< R >.

References SPxStarter().

◆ generate()

template<class R>
virtual void generate ( SPxSolverBase< R > & base)
pure virtual

generates start basis for loaded basis.

Implemented in SPxWeightST< R >.

◆ getName()

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

get name of starter.

Definition at line 100 of file spxstarter.h.

References m_name.

◆ isConsistent()

template<class R>
virtual bool isConsistent ( ) const
virtual

checks consistency.

Reimplemented in SPxWeightST< R >.

◆ operator=()

template<class R>
SPxStarter & operator= ( const SPxStarter< R > & rhs)

assignment operator

Definition at line 78 of file spxstarter.h.

References m_name, and SPxStarter().

Referenced by SPxWeightST< R >::operator=().

◆ setTolerances()

template<class R>
virtual void setTolerances ( const std::shared_ptr< Tolerances > & tolerances)
virtual

set the tolerances to be used by the starter

Definition at line 114 of file spxstarter.h.

References _tolerances, and tolerances().

◆ tolerances()

template<class R>
virtual const std::shared_ptr< Tolerances > & tolerances ( ) const
virtual

get the toelrances used by the starter

Definition at line 119 of file spxstarter.h.

References _tolerances.

Referenced by setTolerances().

Member Data Documentation

◆ _tolerances

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

tolerances for the starter

Definition at line 61 of file spxstarter.h.

Referenced by setTolerances(), and tolerances().

◆ m_name

template<class R>
const char* m_name
protected