scsolver::numeric::BaseFuncRatioObjImpl Class Reference

Inheritance diagram for scsolver::numeric::BaseFuncRatioObjImpl:

Inheritance graph
[legend]
Collaboration diagram for scsolver::numeric::BaseFuncRatioObjImpl:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 BaseFuncRatioObjImpl (BaseFuncObj &rParent, const vector< double > &ratios)
virtual ~BaseFuncRatioObjImpl ()
virtual void setVar (double var)
virtual double getVar () const
virtual double eval () const
virtual const string getFuncString () const

Private Attributes

BaseFuncObjm_rParent
vector< double > m_ratios
size_t m_varIndex
double m_oldVar


Detailed Description

This class wraps a multi-variable function object into a single-variable one by locking the change ratio of the variables. The variable in the wrapping class will always be the 1st variable of the original function. For instance, a 3-variable function can be turned into a single-variable function by specifying change ratios of (3.0, 2.0, 1.5). In this case, these relationships - x2 = 2.0/3.0 * x1 and x3 = 1.5/3.0 * x1 - is established.

Definition at line 99 of file funcobj.cxx.


Constructor & Destructor Documentation

scsolver::numeric::BaseFuncRatioObjImpl::BaseFuncRatioObjImpl ( BaseFuncObj rParent,
const vector< double > &  ratios 
) [inline]

Definition at line 102 of file funcobj.cxx.

References scsolver::numeric::BaseFuncObj::getVar().

virtual scsolver::numeric::BaseFuncRatioObjImpl::~BaseFuncRatioObjImpl (  )  [inline, virtual]

Definition at line 131 of file funcobj.cxx.


Member Function Documentation

virtual void scsolver::numeric::BaseFuncRatioObjImpl::setVar ( double  var  )  [inline, virtual]

Implements scsolver::numeric::SingleVarFuncObj.

Definition at line 135 of file funcobj.cxx.

virtual double scsolver::numeric::BaseFuncRatioObjImpl::getVar (  )  const [inline, virtual]

Implements scsolver::numeric::SingleVarFuncObj.

Definition at line 155 of file funcobj.cxx.

virtual double scsolver::numeric::BaseFuncRatioObjImpl::eval (  )  const [inline, virtual]

Implements scsolver::numeric::SingleVarFuncObj.

Definition at line 160 of file funcobj.cxx.

virtual const string scsolver::numeric::BaseFuncRatioObjImpl::getFuncString (  )  const [inline, virtual]

Return a display-friendly function string (e.g. x^3 + 2*x^2 + 4).

Implements scsolver::numeric::SingleVarFuncObj.

Definition at line 165 of file funcobj.cxx.


Member Data Documentation

BaseFuncObj& scsolver::numeric::BaseFuncRatioObjImpl::m_rParent [private]

Definition at line 185 of file funcobj.cxx.

vector<double> scsolver::numeric::BaseFuncRatioObjImpl::m_ratios [private]

Definition at line 186 of file funcobj.cxx.

size_t scsolver::numeric::BaseFuncRatioObjImpl::m_varIndex [private]

Definition at line 187 of file funcobj.cxx.

double scsolver::numeric::BaseFuncRatioObjImpl::m_oldVar [private]

Definition at line 188 of file funcobj.cxx.


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