#include <integratorchain.h>
Public Member Functions | |
IntegratorChain (AScalarToN< T, depth > *data, int level) | |
~IntegratorChain () | |
virtual CT | f (DT x) const override |
virtual DT | limitHi () const override |
virtual DT | limitLo () const override |
virtual void | invertDirection () override |
virtual void | setLimits (DT lo, DT hi) override |
virtual ALFunction< DT, CT > * | clone () override |
virtual ALFunction< DT, CT > * | create_derivative () override |
virtual void | bound (const DT &xmin, const DT &xmax, CT &ymin, CT &ymax) override |
Public Member Functions inherited from adore::mad::ALFunction< T, T > | |
virtual void | f (T *xvec, T *yvec, unsigned int count) const |
void | bound (T &ymin, T &ymax) |
virtual | ~ALFunction () |
ALFunction () | |
const T | operator() (T x) const |
bool | isInDomain (T x) |
T | f_bounded (T x) |
void | invalidateCachedBounds () |
Private Types | |
typedef T | DT |
typedef T | CT |
Private Attributes | |
int | m_level |
AScalarToN< T, depth > * | m_data |
A function which stacks derivatives in the codomain vector. IntegratorChain assumes that a given function represents derivatives in its different dimensions, e.g. m_data->fi(x,1) = d/dx m_data->fi(x,0) m_data->fi(x,2) = d^2/dx^2 m_data->fi(x,0) m_data->fi(x,3) = d^3/dx^3 m_data->fi(x,0) ...
|
private |
|
private |
|
inline |
|
inline |
|
inlineoverridevirtual |
bound function values in the x-range defined by the hypercube between corner points lower left xmin and upper right xmax
Implements adore::mad::ALFunction< T, T >.
|
inlineoverridevirtual |
create a copy of child class object - is used for function operations
Implements adore::mad::ALFunction< T, T >.
|
inlineoverridevirtual |
create a new function object, which is the derivative function
Implements adore::mad::ALFunction< T, T >.
|
inlineoverridevirtual |
function evaluation returns y of codomain type CT for a value x of domain type DT
Implements adore::mad::ALFunction< T, T >.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
query upper limit of the domain
Implements adore::mad::ALFunction< T, T >.
|
inlineoverridevirtual |
lower limit of the domain
Implements adore::mad::ALFunction< T, T >.
|
inlineoverridevirtual |
reduce or increase the limit of the function, without changing y
Implements adore::mad::ALFunction< T, T >.
|
private |
|
private |