Scippy

SoPlex

Sequential object-oriented simPlex

SPxStarter< R > Class Template Referenceabstract

SoPlex start basis generation base class. More...

#include <spxstarter.h>

Public Member Functions

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

Private Member Functions

Blocked
 SPxStarter ()
 we have no default constructor. More...
 

Data

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

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]

SPxStarter ( const char *  name)
explicit

constructor

Definition at line 70 of file spxstarter.h.

◆ SPxStarter() [2/3]

SPxStarter ( const SPxStarter< R > &  old)

copy constructor

Definition at line 74 of file spxstarter.h.

◆ ~SPxStarter()

virtual ~SPxStarter ( )
virtual

destructor.

Definition at line 88 of file spxstarter.h.

References SPxStarter< R >::m_name.

◆ SPxStarter() [3/3]

SPxStarter ( )
private

we have no default constructor.

Member Function Documentation

◆ clone()

virtual SPxStarter * clone ( ) const
pure virtual

clone function for polymorphism

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

◆ generate()

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

generates start basis for loaded basis.

Implemented in SPxWeightST< R >.

◆ getName()

virtual const char * getName ( ) const
virtual

get name of starter.

Definition at line 100 of file spxstarter.h.

References SPxStarter< R >::m_name.

◆ isConsistent()

virtual bool isConsistent ( ) const
virtual

checks consistency.

Reimplemented in SPxWeightST< R >.

◆ operator=()

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

assignment operator

Definition at line 78 of file spxstarter.h.

References SPxStarter< R >::m_name.

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

◆ setTolerances()

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 SPxStarter< R >::_tolerances, and SPxStarter< R >::tolerances().

◆ tolerances()

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 SPxStarter< R >::_tolerances.

Referenced by SPxStarter< R >::setTolerances().

Member Data Documentation

◆ _tolerances

std::shared_ptr<Tolerances> _tolerances
protected

tolerances for the starter

Definition at line 61 of file spxstarter.h.

Referenced by SPxStarter< R >::setTolerances(), and SPxStarter< R >::tolerances().

◆ m_name

const char* m_name
protected