5#ifndef BPP_PHYL_PSEUDONEWTONOPTIMIZER_H
6#define BPP_PHYL_PSEUDONEWTONOPTIMIZER_H
67 return *dynamic_pointer_cast<const SecondOrderDerivable>(
function_);
72 return *dynamic_pointer_cast<SecondOrderDerivable>(
function_);
77 return dynamic_pointer_cast<const SecondOrderDerivable>(
function_);
82 return dynamic_pointer_cast<SecondOrderDerivable>(
function_);
std::shared_ptr< FunctionInterface > function_
const FunctionInterface & function() const override
bool isToleranceReached() const
PNStopCondition * clone() const
double getCurrentTolerance() const
PNStopCondition(PseudoNewtonOptimizer *pno)
virtual ~PNStopCondition()
This Optimizer implements Newton's algorithm for finding a minimum of a function. This is in fact a m...
PseudoNewtonOptimizer * clone() const
std::shared_ptr< const SecondOrderDerivable > getSecondOrderDerivableFunction() const
const SecondOrderDerivable & secondOrderDerivableFunction() const
ParameterList previousPoint_
std::shared_ptr< SecondOrderDerivable > getSecondOrderDerivableFunction()
PseudoNewtonOptimizer(std::shared_ptr< SecondOrderDerivable > function)
virtual ~PseudoNewtonOptimizer()
void setMaximumNumberOfCorrections(unsigned int mx)
std::vector< std::string > params_
double getFunctionValue() const
void doInit(const ParameterList ¶ms)
SecondOrderDerivable & secondOrderDerivableFunction()
unsigned int maxCorrection_
Defines the basic types of data flow nodes.