#include <diff.hxx>

Public Member Functions | |
| NumericalDiffer () | |
| ~NumericalDiffer () throw () | |
| void | setPrecision (unsigned long n) |
| void | setSecondOrder (bool b) |
| void | setVariable (double var) |
| void | setFuncObject (SingleVarFuncObj *pFuncObj) |
| double | run () |
Private Member Functions | |
| void | initialize () |
| void | setDirty () |
| void | appendNewH () |
| void | setT (unsigned long m, unsigned long i, double fVal) |
| double | getT (unsigned long m, unsigned long i) |
| double | T0 (unsigned long i) |
| double | Tm () |
| double | Tm (unsigned long m, unsigned long i=0) |
Private Attributes | |
| unsigned long | m_nPrec |
| bool | m_bSecondOrder |
| SingleVarFuncObj * | m_pFuncObj |
| double | m_var |
| ::std::vector< double > | m_cnX |
| ::std::vector< double > | m_cnH |
| ::std::vector < ::std::vector < double > > | m_cnT |
Static Private Attributes | |
| static const double | OMEGA = 2.0 |
Definition at line 46 of file diff.hxx.
| scsolver::numeric::NumericalDiffer::~NumericalDiffer | ( | ) | throw () |
| void scsolver::numeric::NumericalDiffer::setPrecision | ( | unsigned long | n | ) |
Definition at line 54 of file diff.cxx.
References m_nPrec.
Referenced by scsolver::numeric::calcStepLength(), and scsolver::numeric::nlp::QuasiNewtonImpl::evaluateFunc().
| void scsolver::numeric::NumericalDiffer::setSecondOrder | ( | bool | b | ) |
| void scsolver::numeric::NumericalDiffer::setVariable | ( | double | var | ) |
Definition at line 65 of file diff.cxx.
References m_var, and setDirty().
Referenced by scsolver::numeric::calcStepLength(), scsolver::numeric::nlp::QuasiNewtonImpl::evaluateFunc(), and scsolver::numeric::BisectionSearch::solve().
| void scsolver::numeric::NumericalDiffer::setFuncObject | ( | SingleVarFuncObj * | pFuncObj | ) |
Definition at line 71 of file diff.cxx.
References m_pFuncObj, and setDirty().
Referenced by scsolver::numeric::calcStepLength(), scsolver::numeric::nlp::QuasiNewtonImpl::evaluateFunc(), and scsolver::numeric::BisectionSearch::solve().
| double scsolver::numeric::NumericalDiffer::run | ( | ) |
Definition at line 187 of file diff.cxx.
References appendNewH(), initialize(), m_nPrec, m_pFuncObj, and Tm().
Referenced by scsolver::numeric::calcStepLength(), scsolver::numeric::nlp::QuasiNewtonImpl::evaluateFunc(), and scsolver::numeric::BisectionSearch::solve().
| void scsolver::numeric::NumericalDiffer::initialize | ( | ) | [private] |
| void scsolver::numeric::NumericalDiffer::setDirty | ( | ) | [private] |
Definition at line 85 of file diff.cxx.
References m_cnT.
Referenced by setFuncObject(), setSecondOrder(), and setVariable().
| void scsolver::numeric::NumericalDiffer::appendNewH | ( | ) | [private] |
| void scsolver::numeric::NumericalDiffer::setT | ( | unsigned long | m, | |
| unsigned long | i, | |||
| double | fVal | |||
| ) | [private] |
| double scsolver::numeric::NumericalDiffer::getT | ( | unsigned long | m, | |
| unsigned long | i | |||
| ) | [private] |
| double scsolver::numeric::NumericalDiffer::T0 | ( | unsigned long | i | ) | [private] |
Definition at line 126 of file diff.cxx.
References scsolver::numeric::SingleVarFuncObj::eval(), m_bSecondOrder, m_cnH, m_pFuncObj, m_var, setT(), and scsolver::numeric::SingleVarFuncObj::setVar().
Referenced by Tm().
| double scsolver::numeric::NumericalDiffer::Tm | ( | ) | [private] |
| double scsolver::numeric::NumericalDiffer::Tm | ( | unsigned long | m, | |
| unsigned long | i = 0 | |||
| ) | [private] |
const double scsolver::numeric::NumericalDiffer::OMEGA = 2.0 [static, private] |
unsigned long scsolver::numeric::NumericalDiffer::m_nPrec [private] |
bool scsolver::numeric::NumericalDiffer::m_bSecondOrder [private] |
double scsolver::numeric::NumericalDiffer::m_var [private] |
::std::vector<double> scsolver::numeric::NumericalDiffer::m_cnX [private] |
::std::vector<double> scsolver::numeric::NumericalDiffer::m_cnH [private] |
::std::vector< ::std::vector<double> > scsolver::numeric::NumericalDiffer::m_cnT [private] |
1.5.3