scsolver::numeric::lp::ModelImpl Class Reference

Collaboration diagram for scsolver::numeric::lp::ModelImpl:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ModelImpl ()
 ModelImpl (const ModelImpl &)
 ~ModelImpl () throw ()
void swap (ModelImpl &) throw ()
void print () const
size_t getDecisionVarSize () const
size_t getConstraintCount () const
double getCost (size_t rowid) const
Matrix getCostVector () const
void setCostVectorElement (size_t, double)
void setCostVector (const std::vector< double > &)
void deleteCostVectorElements (const std::vector< size_t > &)
AttrBound getVarBoundAttribute (size_t, BoundType) const
double getVarBound (size_t, BoundType) const
void setVarBound (size_t, BoundType, double)
bool isVarBounded (size_t, BoundType) const
void deleteVarRanges (const std::vector< size_t > &)
void deleteVariables (const std::vector< size_t > &)
GoalType getGoal () const
void setGoal (GoalType e)
double getObjectiveFuncConstant () const
void setObjectiveFuncConstant (double f)
unsigned long getPrecision () const
void setPrecision (unsigned long n)
bool getVarPositive () const
void setVarPositive (bool b)
bool getVarInteger () const
void setVarInteger (bool b)
bool getVerbose () const
void setVerbose (bool b)
double getConstraint (size_t, size_t) const
Matrix getConstraintMatrix () const
Matrix getRhsVector () const
double getRhsValue (size_t) const
void setRhsValue (size_t, double)
vector< EqualityTypegetEqualityVector () const
EqualityType getEqualityByRowId (size_t i) const
void addConstraint (const std::vector< double > &, EqualityType, double)
void setStandardConstraintMatrix (const Matrix &, const Matrix &)
void deleteConstraintMatrixColumns (const std::vector< size_t > &)

Private Attributes

Matrix m_mxCost
Matrix m_mxConstraint
Matrix m_mxRHS
vector< VarBoundsm_cnVarRanges
vector< EqualityTypem_eEqualities
GoalType m_eGoal
unsigned long m_nPrecision
bool m_bVarPositive
bool m_bVarInteger
bool m_bVerbose
double m_fObjFuncConstant


Detailed Description

Definition at line 75 of file lpmodel.cxx.


Constructor & Destructor Documentation

scsolver::numeric::lp::ModelImpl::ModelImpl (  ) 

Definition at line 155 of file lpmodel.cxx.

scsolver::numeric::lp::ModelImpl::ModelImpl ( const ModelImpl other  ) 

Definition at line 162 of file lpmodel.cxx.

scsolver::numeric::lp::ModelImpl::~ModelImpl (  )  throw ()

Definition at line 175 of file lpmodel.cxx.


Member Function Documentation

void scsolver::numeric::lp::ModelImpl::swap ( ModelImpl other  )  throw ()

Definition at line 179 of file lpmodel.cxx.

void scsolver::numeric::lp::ModelImpl::print (  )  const

Definition at line 368 of file lpmodel.cxx.

References scsolver::numeric::BOUND_LOWER, scsolver::numeric::BOUND_UPPER, scsolver::numeric::Matrix::cols(), scsolver::numeric::EQUAL, getCostVector(), scsolver::numeric::Matrix::getDisplayElements(), getVarBound(), scsolver::numeric::GOAL_MAXIMIZE, scsolver::numeric::GOAL_MINIMIZE, scsolver::numeric::GREATER_EQUAL, isVarBounded(), scsolver::numeric::LESS_EQUAL, m_bVarPositive, m_eEqualities, m_eGoal, m_mxConstraint, m_mxCost, m_mxRHS, scsolver::repeatString(), and scsolver::numeric::Matrix::rows().

size_t scsolver::numeric::lp::ModelImpl::getDecisionVarSize (  )  const [inline]

Definition at line 84 of file lpmodel.cxx.

References scsolver::numeric::Matrix::cols(), and m_mxCost.

size_t scsolver::numeric::lp::ModelImpl::getConstraintCount (  )  const [inline]

Definition at line 85 of file lpmodel.cxx.

References m_mxConstraint, and scsolver::numeric::Matrix::rows().

double scsolver::numeric::lp::ModelImpl::getCost ( size_t  rowid  )  const [inline]

Definition at line 87 of file lpmodel.cxx.

References m_mxCost.

Matrix scsolver::numeric::lp::ModelImpl::getCostVector (  )  const [inline]

Definition at line 88 of file lpmodel.cxx.

References m_mxCost.

Referenced by print().

void scsolver::numeric::lp::ModelImpl::setCostVectorElement ( size_t  nId,
double  fVal 
)

Definition at line 193 of file lpmodel.cxx.

References m_mxCost.

Referenced by setCostVector().

void scsolver::numeric::lp::ModelImpl::setCostVector ( const std::vector< double > &  cn  ) 

Definition at line 199 of file lpmodel.cxx.

References setCostVectorElement().

void scsolver::numeric::lp::ModelImpl::deleteCostVectorElements ( const std::vector< size_t > &  cn  ) 

Definition at line 210 of file lpmodel.cxx.

References scsolver::numeric::Matrix::deleteColumns(), and m_mxCost.

Referenced by deleteVariables().

AttrBound scsolver::numeric::lp::ModelImpl::getVarBoundAttribute ( size_t  i,
BoundType  e 
) const

Definition at line 215 of file lpmodel.cxx.

References scsolver::numeric::BOUND_LOWER, scsolver::numeric::BOUND_UPPER, scsolver::numeric::lp::AttrBound::Enabled, scsolver::numeric::lp::VarBounds::Lower, m_cnVarRanges, scsolver::numeric::lp::VarBounds::Upper, and scsolver::numeric::lp::AttrBound::Value.

Referenced by getVarBound(), and isVarBounded().

double scsolver::numeric::lp::ModelImpl::getVarBound ( size_t  i,
BoundType  e 
) const

Definition at line 243 of file lpmodel.cxx.

References scsolver::numeric::lp::AttrBound::Enabled, getVarBoundAttribute(), and scsolver::numeric::lp::AttrBound::Value.

Referenced by print().

void scsolver::numeric::lp::ModelImpl::setVarBound ( size_t  nVarId,
BoundType  e,
double  fBound 
)

Definition at line 252 of file lpmodel.cxx.

References scsolver::numeric::BOUND_LOWER, scsolver::numeric::BOUND_UPPER, scsolver::numeric::lp::AttrBound::Enabled, scsolver::numeric::lp::VarBounds::Lower, m_cnVarRanges, scsolver::numeric::lp::VarBounds::Upper, and scsolver::numeric::lp::AttrBound::Value.

bool scsolver::numeric::lp::ModelImpl::isVarBounded ( size_t  i,
BoundType  e 
) const

Definition at line 287 of file lpmodel.cxx.

References scsolver::numeric::lp::AttrBound::Enabled, and getVarBoundAttribute().

Referenced by print().

void scsolver::numeric::lp::ModelImpl::deleteVarRanges ( const std::vector< size_t > &  cnVarIds  ) 

Definition at line 293 of file lpmodel.cxx.

References m_cnVarRanges.

Referenced by deleteVariables().

void scsolver::numeric::lp::ModelImpl::deleteVariables ( const std::vector< size_t > &  cnVarIds  ) 

Definition at line 311 of file lpmodel.cxx.

References scsolver::Debug(), deleteConstraintMatrixColumns(), deleteCostVectorElements(), and deleteVarRanges().

GoalType scsolver::numeric::lp::ModelImpl::getGoal (  )  const [inline]

Definition at line 101 of file lpmodel.cxx.

References m_eGoal.

void scsolver::numeric::lp::ModelImpl::setGoal ( GoalType  e  )  [inline]

Definition at line 102 of file lpmodel.cxx.

References m_eGoal.

double scsolver::numeric::lp::ModelImpl::getObjectiveFuncConstant (  )  const [inline]

Definition at line 104 of file lpmodel.cxx.

References m_fObjFuncConstant.

void scsolver::numeric::lp::ModelImpl::setObjectiveFuncConstant ( double  f  )  [inline]

Definition at line 105 of file lpmodel.cxx.

References m_fObjFuncConstant.

unsigned long scsolver::numeric::lp::ModelImpl::getPrecision (  )  const [inline]

Definition at line 107 of file lpmodel.cxx.

References m_nPrecision.

void scsolver::numeric::lp::ModelImpl::setPrecision ( unsigned long  n  )  [inline]

Definition at line 108 of file lpmodel.cxx.

References m_nPrecision.

bool scsolver::numeric::lp::ModelImpl::getVarPositive (  )  const [inline]

Definition at line 110 of file lpmodel.cxx.

References m_bVarPositive.

void scsolver::numeric::lp::ModelImpl::setVarPositive ( bool  b  )  [inline]

Definition at line 111 of file lpmodel.cxx.

References m_bVarPositive.

bool scsolver::numeric::lp::ModelImpl::getVarInteger (  )  const [inline]

Definition at line 113 of file lpmodel.cxx.

References m_bVarInteger.

void scsolver::numeric::lp::ModelImpl::setVarInteger ( bool  b  )  [inline]

Definition at line 118 of file lpmodel.cxx.

References m_bVarInteger.

bool scsolver::numeric::lp::ModelImpl::getVerbose (  )  const [inline]

Definition at line 123 of file lpmodel.cxx.

References m_bVerbose.

void scsolver::numeric::lp::ModelImpl::setVerbose ( bool  b  )  [inline]

Definition at line 124 of file lpmodel.cxx.

References m_bVerbose.

double scsolver::numeric::lp::ModelImpl::getConstraint ( size_t  nRow,
size_t  nCol 
) const

Definition at line 319 of file lpmodel.cxx.

References m_mxConstraint.

Matrix scsolver::numeric::lp::ModelImpl::getConstraintMatrix (  )  const [inline]

Definition at line 127 of file lpmodel.cxx.

References m_mxConstraint.

Matrix scsolver::numeric::lp::ModelImpl::getRhsVector (  )  const [inline]

Definition at line 128 of file lpmodel.cxx.

References m_mxRHS.

double scsolver::numeric::lp::ModelImpl::getRhsValue ( size_t  nId  )  const

Definition at line 324 of file lpmodel.cxx.

References m_mxRHS.

void scsolver::numeric::lp::ModelImpl::setRhsValue ( size_t  nId,
double  fVal 
)

Definition at line 329 of file lpmodel.cxx.

References m_mxRHS.

vector<EqualityType> scsolver::numeric::lp::ModelImpl::getEqualityVector (  )  const [inline]

Definition at line 131 of file lpmodel.cxx.

References m_eEqualities.

EqualityType scsolver::numeric::lp::ModelImpl::getEqualityByRowId ( size_t  i  )  const [inline]

Definition at line 132 of file lpmodel.cxx.

References m_eEqualities.

void scsolver::numeric::lp::ModelImpl::addConstraint ( const std::vector< double > &  aConst,
EqualityType  eEqual,
double  fRHS 
)

Definition at line 334 of file lpmodel.cxx.

References m_eEqualities, m_mxConstraint, m_mxRHS, and scsolver::numeric::Matrix::rows().

Referenced by setStandardConstraintMatrix().

void scsolver::numeric::lp::ModelImpl::setStandardConstraintMatrix ( const Matrix A,
const Matrix B 
)

Definition at line 349 of file lpmodel.cxx.

References addConstraint(), scsolver::numeric::Matrix::cols(), scsolver::numeric::EQUAL, and scsolver::numeric::Matrix::rows().

void scsolver::numeric::lp::ModelImpl::deleteConstraintMatrixColumns ( const std::vector< size_t > &  cn  ) 

Definition at line 363 of file lpmodel.cxx.

References scsolver::numeric::Matrix::deleteColumns(), and m_mxConstraint.

Referenced by deleteVariables().


Member Data Documentation

Matrix scsolver::numeric::lp::ModelImpl::m_mxCost [private]

Definition at line 138 of file lpmodel.cxx.

Referenced by deleteCostVectorElements(), getCost(), getCostVector(), getDecisionVarSize(), print(), and setCostVectorElement().

Matrix scsolver::numeric::lp::ModelImpl::m_mxConstraint [private]

Definition at line 139 of file lpmodel.cxx.

Referenced by addConstraint(), deleteConstraintMatrixColumns(), getConstraint(), getConstraintCount(), getConstraintMatrix(), and print().

Matrix scsolver::numeric::lp::ModelImpl::m_mxRHS [private]

Definition at line 140 of file lpmodel.cxx.

Referenced by addConstraint(), getRhsValue(), getRhsVector(), print(), and setRhsValue().

vector<VarBounds> scsolver::numeric::lp::ModelImpl::m_cnVarRanges [private]

Definition at line 142 of file lpmodel.cxx.

Referenced by deleteVarRanges(), getVarBoundAttribute(), and setVarBound().

vector<EqualityType> scsolver::numeric::lp::ModelImpl::m_eEqualities [private]

Definition at line 143 of file lpmodel.cxx.

Referenced by addConstraint(), getEqualityByRowId(), getEqualityVector(), and print().

GoalType scsolver::numeric::lp::ModelImpl::m_eGoal [private]

Definition at line 145 of file lpmodel.cxx.

Referenced by getGoal(), print(), and setGoal().

unsigned long scsolver::numeric::lp::ModelImpl::m_nPrecision [private]

Definition at line 146 of file lpmodel.cxx.

Referenced by getPrecision(), and setPrecision().

bool scsolver::numeric::lp::ModelImpl::m_bVarPositive [private]

Definition at line 147 of file lpmodel.cxx.

Referenced by getVarPositive(), print(), and setVarPositive().

bool scsolver::numeric::lp::ModelImpl::m_bVarInteger [private]

Definition at line 148 of file lpmodel.cxx.

Referenced by getVarInteger(), and setVarInteger().

bool scsolver::numeric::lp::ModelImpl::m_bVerbose [private]

Definition at line 150 of file lpmodel.cxx.

Referenced by getVerbose(), and setVerbose().

double scsolver::numeric::lp::ModelImpl::m_fObjFuncConstant [private]

Definition at line 151 of file lpmodel.cxx.

Referenced by getObjectiveFuncConstant(), and setObjectiveFuncConstant().


The documentation for this class was generated from the following file:
Generated on Mon Jul 28 09:13:51 2008 for scsolver by  doxygen 1.5.3