scsolver::numeric::BaseFuncObj Class Reference

#include <funcobj.hxx>

Inheritance diagram for scsolver::numeric::BaseFuncObj:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 BaseFuncObj ()
 BaseFuncObj (size_t varCount)
 BaseFuncObj (const BaseFuncObj &r)
virtual ~BaseFuncObj ()=0
const ::std::vector
< double > & 
getVars () const
double getVar (size_t index) const
void setVars (const ::std::vector< double > &vars) const
void setVar (size_t index, double var) const
size_t getVarCount () const
virtual double eval () const =0
virtual const
::std::string 
getFuncString () const =0
double operator() (const ::std::vector< double > &vars) const
SingleVarFuncObjgetSingleVarFuncObj (size_t varIndex)
SingleVarFuncObjgetSingleVarFuncObjByRatio (const ::std::vector< double > &ratios)

Private Attributes

mutable::std::vector
< double > 
m_vars
::std::auto_ptr
< SingleVarFuncObj
m_pSVFuncObj


Detailed Description

Base class for function object to be used for NLP algorithms.

Definition at line 49 of file funcobj.hxx.


Constructor & Destructor Documentation

scsolver::numeric::BaseFuncObj::BaseFuncObj (  ) 

Definition at line 194 of file funcobj.cxx.

scsolver::numeric::BaseFuncObj::BaseFuncObj ( size_t  varCount  ) 

Definition at line 199 of file funcobj.cxx.

scsolver::numeric::BaseFuncObj::BaseFuncObj ( const BaseFuncObj r  ) 

Definition at line 205 of file funcobj.cxx.

scsolver::numeric::BaseFuncObj::~BaseFuncObj (  )  [pure virtual]

Definition at line 212 of file funcobj.cxx.


Member Function Documentation

const vector< double > & scsolver::numeric::BaseFuncObj::getVars (  )  const

Reimplemented in scsolver::numeric::CellFuncObj.

Definition at line 216 of file funcobj.cxx.

References m_vars.

Referenced by TestFunc2::eval(), scsolver::numeric::nlp::BaseAlgorithm::getSolution(), scsolver::numeric::nlp::QuasiNewtonImpl::runLinearSearch(), scsolver::numeric::nlp::Rosenbrock::solve(), scsolver::numeric::nlp::HookeJeeves::solve(), and scsolver::numeric::nlp::CyclicCoordinate::solve().

double scsolver::numeric::BaseFuncObj::getVar ( size_t  index  )  const

Definition at line 221 of file funcobj.cxx.

References m_vars.

Referenced by scsolver::numeric::BaseFuncRatioObjImpl::BaseFuncRatioObjImpl(), TestFunc::eval(), TestFunc::evalDef1(), and scsolver::numeric::nlp::Rosenbrock::solve().

void scsolver::numeric::BaseFuncObj::setVars ( const ::std::vector< double > &  vars  )  const

Referenced by scsolver::numeric::nlp::QuasiNewtonImpl::evalF(), scsolver::numeric::nlp::QuasiNewtonImpl::evaluateFunc(), and scsolver::numeric::nlp::QuasiNewtonImpl::runLinearSearch().

void scsolver::numeric::BaseFuncObj::setVar ( size_t  index,
double  var 
) const

Reimplemented in scsolver::numeric::CellFuncObj.

Definition at line 238 of file funcobj.cxx.

References m_vars.

Referenced by scsolver::numeric::nlp::HookeJeeves::solve(), and scsolver::numeric::nlp::CyclicCoordinate::solve().

size_t scsolver::numeric::BaseFuncObj::getVarCount (  )  const

Definition at line 252 of file funcobj.cxx.

References m_vars.

virtual double scsolver::numeric::BaseFuncObj::eval (  )  const [pure virtual]

Implemented in scsolver::numeric::CellFuncObj, TestFunc2, TestFunc2, TestFunc, TestFunc2, and TestFunc2.

Referenced by scsolver::numeric::nlp::QuasiNewtonImpl::evalF(), scsolver::numeric::nlp::HookeJeeves::solve(), and scsolver::numeric::nlp::CyclicCoordinate::solve().

virtual const ::std::string scsolver::numeric::BaseFuncObj::getFuncString (  )  const [pure virtual]

Return a display-friendly function string.

Implemented in scsolver::numeric::CellFuncObj, scsolver::numeric::nlp::Penalty, TestFunc2, TestFunc2, TestFunc, TestFunc2, and TestFunc2.

Referenced by scsolver::numeric::nlp::ModelImpl::print().

double scsolver::numeric::BaseFuncObj::operator() ( const ::std::vector< double > &  vars  )  const

SingleVarFuncObj & scsolver::numeric::BaseFuncObj::getSingleVarFuncObj ( size_t  varIndex  ) 

Definition at line 226 of file funcobj.cxx.

References m_pSVFuncObj.

Referenced by scsolver::numeric::nlp::QuasiNewtonImpl::evaluateFunc(), scsolver::numeric::nlp::HookeJeeves::solve(), scsolver::numeric::nlp::CyclicCoordinate::solve(), and test().

SingleVarFuncObj& scsolver::numeric::BaseFuncObj::getSingleVarFuncObjByRatio ( const ::std::vector< double > &  ratios  ) 

Referenced by scsolver::numeric::nlp::QuasiNewtonImpl::runLinearSearch(), scsolver::numeric::nlp::Rosenbrock::solve(), and scsolver::numeric::nlp::HookeJeeves::solve().


Member Data Documentation

mutable ::std::vector<double> scsolver::numeric::BaseFuncObj::m_vars [private]

Definition at line 77 of file funcobj.hxx.

Referenced by getVar(), getVarCount(), getVars(), and setVar().

::std::auto_ptr<SingleVarFuncObj> scsolver::numeric::BaseFuncObj::m_pSVFuncObj [private]

Definition at line 78 of file funcobj.hxx.

Referenced by getSingleVarFuncObj().


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