Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

OsiDylpWarmStartBasis Class Reference

The dylp warm start class. More...

#include <OsiDylpWarmStartBasis.hpp>

List of all members.

Public Member Functions

Methods to get and set basis information.
Methods for structural and artificial variables are inherited from CoinWarmStartBasis. Constraint status is coded using the CoinWarmStartBasis::Status codes. Active constraints are coded as atLowerBound, inactive as isFree.

int numberActiveConstraints () const
 Return the number of active constraints.
Status getConStatus (int i) const
 Return the status of the specified constraint.
void setConStatus (int i, Status st)
 Set the status of the specified constraint.
char * getConstraintStatus ()
 Return the status array for constraints.
const char * getConstraintStatus () const
 const overload for getConstraintStatus()
void setPhase (dyphase_enum phase)
 Set the lp phase for this basis.
dyphase_enum getPhase () const
 Get the lp phase for this basis.
Basis `diff' methods
CoinWarmStartDiff * generateDiff (const CoinWarmStart *const oldCWS) const
 Generate a `diff' that can convert oldBasis to this basis.
void applyDiff (const CoinWarmStartDiff *const cwsdDiff)
 Apply diff to this basis.
Methods to modify the warm start object
void setSize (int ns, int na)
 Set basis capacity; existing basis is discarded.
void resize (int numRows, int numCols)
 Set basis capacity; existing basis is maintained.
void compressRows (int tgtCnt, const int *tgts)
 Delete a set of rows from the basis.
void deleteRows (int number, const int *which)
 Delete a set of rows from the basis.
Constructors, destructors, and related functions
 OsiDylpWarmStartBasis ()
 Default constructor (empty object).
 OsiDylpWarmStartBasis (int ns, int na, const char *sStat, const char *aStat, const char *cStat=0)
 Constructs a warm start object with the specified status arrays.
 OsiDylpWarmStartBasis (const CoinWarmStartBasis &cwsb)
 Construct an OsiDylpWarmStartBasis from a CoinWarmStartBasis.
 OsiDylpWarmStartBasis (const OsiDylpWarmStartBasis &ws)
 Copy constructor.
CoinWarmStart * clone () const
 `Virtual constructor'
 ~OsiDylpWarmStartBasis ()
 Destructor.
OsiDylpWarmStartBasisoperator= (const OsiDylpWarmStartBasis &rhs)
 Assignment.
void assignBasisStatus (int ns, int na, char *&sStat, char *&aStat, char *&cStat)
 Assign the status vectors to be the warm start information.
void assignBasisStatus (int ns, int na, char *&sStat, char *&aStat)
 Assign the status vectors to be the warm start information.
Miscellaneous methods
void print () const
 Prints in readable format (for debug).
void checkBasis () const
 Performs basis consistency checks (for debug).

Private Attributes

Constraint status private data members
dyphase_enum phase_
 dylp phase
char * constraintStatus_
 vector of constraint status information


Detailed Description

The dylp warm start class.

This derived class is necessary because dylp by default works with a subset of the full constraint system. The warm start object needs to contain a list of the active constraints in addition to the status information included in CoinWarmStartBasis. It is also convenient to include the solver phase in the warm start object.

Definition at line 40 of file OsiDylpWarmStartBasis.hpp.


Constructor & Destructor Documentation

OsiDylpWarmStartBasis::OsiDylpWarmStartBasis  ) 
 

Default constructor (empty object).

OsiDylpWarmStartBasis::OsiDylpWarmStartBasis int  ns,
int  na,
const char *  sStat,
const char *  aStat,
const char *  cStat = 0
 

Constructs a warm start object with the specified status arrays.

OsiDylpWarmStartBasis::OsiDylpWarmStartBasis const CoinWarmStartBasis &  cwsb  ) 
 

Construct an OsiDylpWarmStartBasis from a CoinWarmStartBasis.

OsiDylpWarmStartBasis::OsiDylpWarmStartBasis const OsiDylpWarmStartBasis ws  ) 
 

Copy constructor.

OsiDylpWarmStartBasis::~OsiDylpWarmStartBasis  ) 
 

Destructor.


Member Function Documentation

int OsiDylpWarmStartBasis::numberActiveConstraints  )  const
 

Return the number of active constraints.

Status OsiDylpWarmStartBasis::getConStatus int  i  )  const [inline]
 

Return the status of the specified constraint.

Definition at line 60 of file OsiDylpWarmStartBasis.hpp.

References constraintStatus_.

void OsiDylpWarmStartBasis::setConStatus int  i,
Status  st
[inline]
 

Set the status of the specified constraint.

Definition at line 68 of file OsiDylpWarmStartBasis.hpp.

References constraintStatus_.

char* OsiDylpWarmStartBasis::getConstraintStatus  )  [inline]
 

Return the status array for constraints.

Definition at line 77 of file OsiDylpWarmStartBasis.hpp.

const char* OsiDylpWarmStartBasis::getConstraintStatus  )  const [inline]
 

const overload for getConstraintStatus()

Definition at line 85 of file OsiDylpWarmStartBasis.hpp.

void OsiDylpWarmStartBasis::setPhase dyphase_enum  phase  )  [inline]
 

Set the lp phase for this basis.

Definition at line 92 of file OsiDylpWarmStartBasis.hpp.

References phase_.

dyphase_enum OsiDylpWarmStartBasis::getPhase  )  const [inline]
 

Get the lp phase for this basis.

Definition at line 96 of file OsiDylpWarmStartBasis.hpp.

CoinWarmStartDiff* OsiDylpWarmStartBasis::generateDiff const CoinWarmStart *const   oldCWS  )  const
 

Generate a `diff' that can convert oldBasis to this basis.

void OsiDylpWarmStartBasis::applyDiff const CoinWarmStartDiff *const   cwsdDiff  ) 
 

Apply diff to this basis.

void OsiDylpWarmStartBasis::setSize int  ns,
int  na
 

Set basis capacity; existing basis is discarded.

void OsiDylpWarmStartBasis::resize int  numRows,
int  numCols
 

Set basis capacity; existing basis is maintained.

void OsiDylpWarmStartBasis::compressRows int  tgtCnt,
const int *  tgts
 

Delete a set of rows from the basis.

Warning:
This routine assumes that the set of indices to be deleted is sorted in ascending order and is free from duplicates. Use deleteRows if this is not guaranteed.

The resulting basis is guaranteed valid only if all deleted constraints are slack (hence the associated logicals are basic).

void OsiDylpWarmStartBasis::deleteRows int  number,
const int *  which
 

Delete a set of rows from the basis.

Warning:
The resulting basis is guaranteed valid only if all deleted constraints are slack (hence the associated logicals are basic).

CoinWarmStart* OsiDylpWarmStartBasis::clone  )  const
 

`Virtual constructor'

OsiDylpWarmStartBasis& OsiDylpWarmStartBasis::operator= const OsiDylpWarmStartBasis rhs  ) 
 

Assignment.

void OsiDylpWarmStartBasis::assignBasisStatus int  ns,
int  na,
char *&  sStat,
char *&  aStat,
char *&  cStat
 

Assign the status vectors to be the warm start information.

void OsiDylpWarmStartBasis::assignBasisStatus int  ns,
int  na,
char *&  sStat,
char *&  aStat
 

Assign the status vectors to be the warm start information.

void OsiDylpWarmStartBasis::print  )  const
 

Prints in readable format (for debug).

void OsiDylpWarmStartBasis::checkBasis  )  const
 

Performs basis consistency checks (for debug).


Member Data Documentation

dyphase_enum OsiDylpWarmStartBasis::phase_ [private]
 

dylp phase

Definition at line 212 of file OsiDylpWarmStartBasis.hpp.

Referenced by setPhase().

char* OsiDylpWarmStartBasis::constraintStatus_ [private]
 

vector of constraint status information

Definition at line 214 of file OsiDylpWarmStartBasis.hpp.

Referenced by getConStatus(), and setConStatus().


The documentation for this class was generated from the following file:
Generated on Sun Jun 11 02:00:41 2006 by  doxygen 1.3.9.1