Several functions stiched together. More...
#include <PolynomialEvolution.h>
Public Member Functions | |
PiecewiseFunction (const std::list< const OneArgumentDiffFunction *> &pieces=std::list< const OneArgumentDiffFunction *>(), double deriv_x=Core::NaN) | |
Create the function. More... | |
void | add_piece (const OneArgumentDiffFunction *piece) |
Adds another piece of the function, where it applies is defined by its range. More... | |
double | operator() (double x) const |
Evaluates the function at the given x. More... | |
const FunctionDerivatives * | deriv (double x) const |
Returns the derivatives at the given x. More... | |
double | order (unsigned deriv_order=1) const |
For a derivative object returns the derivative of the given order. More... | |
double | range_high () const |
The upper end of the range over which the function is defined. More... | |
double | range_low () const |
The lower end of the range over which the function is defined. More... | |
Core::InterpSolutionIterator | crossings (double) const |
An iterator over the x values where the function takes the given value. More... | |
Public Member Functions inherited from Core::OneArgumentFunction< double, double > | |
virtual | ~OneArgumentFunction () |
Provide a virtual destructor for a virtual class. More... | |
Private Attributes | |
double | __deriv_x |
double | __range_low |
double | __range_high |
std::list< const OneArgumentDiffFunction * > | __pieces |
Additional Inherited Members | |
Private Member Functions inherited from Core::FunctionDerivatives | |
virtual | ~FunctionDerivatives () |
Clean up. More... | |
Several functions stiched together.
Definition at line 477 of file PolynomialEvolution.h.
PiecewiseFunction::PiecewiseFunction | ( | const std::list< const OneArgumentDiffFunction *> & | pieces = std::list<const OneArgumentDiffFunction *>() , |
double | deriv_x = Core::NaN |
||
) |
Create the function.
Definition at line 449 of file PolynomialEvolution.cpp.
void PiecewiseFunction::add_piece | ( | const OneArgumentDiffFunction * | piece | ) |
Adds another piece of the function, where it applies is defined by its range.
Definition at line 471 of file PolynomialEvolution.cpp.
|
inlinevirtual |
An iterator over the x values where the function takes the given value.
Implements Core::OneArgumentFunction< double, double >.
Definition at line 510 of file PolynomialEvolution.h.
|
inlinevirtual |
Returns the derivatives at the given x.
Implements Core::OneArgumentDiffFunction.
Definition at line 496 of file PolynomialEvolution.h.
|
virtual |
Evaluates the function at the given x.
Implements Core::OneArgumentFunction< double, double >.
Definition at line 480 of file PolynomialEvolution.cpp.
|
virtual |
For a derivative object returns the derivative of the given order.
Implements Core::FunctionDerivatives.
Definition at line 489 of file PolynomialEvolution.cpp.
|
inlinevirtual |
The upper end of the range over which the function is defined.
Implements Core::OneArgumentFunction< double, double >.
Definition at line 503 of file PolynomialEvolution.h.
|
inlinevirtual |
The lower end of the range over which the function is defined.
Implements Core::OneArgumentFunction< double, double >.
Definition at line 506 of file PolynomialEvolution.h.