#include <alfunction.h>
Public Types | |
typedef AScalarToN< T, 2 >::DT | DT |
typedef AScalarToN< T, 2 >::CT | CT |
typedef ALFunction< T, T > | SUBFUN |
Public Types inherited from adore::mad::AScalarToN< T, 2 > | |
typedef T | DT |
typedef adoreMatrix< T, N, 1 > | CT |
typedef ALFunction< DT, T > | SUBFUN |
Public Member Functions | |
FunctionCombination_StackScalar (ALFunction< T, T > *a, ALFunction< T, T > *b) | |
virtual | ~FunctionCombination_StackScalar () |
virtual adoreMatrix< T, 2, 1 > | f (T x) const override |
virtual DT | limitHi () const override |
virtual DT | limitLo () const override |
virtual void | setLimits (DT lo, DT hi) override |
virtual ALFunction< DT, CT > * | clone () override |
virtual SUBFUN * | dimension (int i) override |
virtual T | fi (T x, int i) const override |
virtual void | multiply (adoreMatrix< T, 0, 0 > A, int rowi, int rowj) |
virtual void | add (adoreMatrix< T, 0, 1 > c, int rowi, int rowj) |
virtual ALFunction< DT, CT > * | create_derivative () override |
virtual void | bound (const T &xmin, const T &xmax, CT &ymin, CT &ymax) override |
Public Member Functions inherited from adore::mad::AScalarToN< T, 2 > | |
void | toArray (DT *xvec, T *yvec, unsigned int count) |
void | toArray (DT *xvec, T *yvec, unsigned int count, unsigned int row) |
virtual void | operator*= (adoreMatrix< T, N, N > A) |
virtual void | operator+= (adoreMatrix< T, N, 1 > b) |
virtual void | operator-= (adoreMatrix< T, N, 1 > b) |
Public Member Functions inherited from adore::mad::ALFunction< T, adoreMatrix< T, N, 1 > > | |
virtual void | setLimits (T lo, T hi)=0 |
virtual void | f (T *xvec, adoreMatrix< T, N, 1 > *yvec, unsigned int count) const |
virtual void | bound (const T &xmin, const T &xmax, adoreMatrix< T, N, 1 > &ymin, adoreMatrix< T, N, 1 > &ymax)=0 |
void | bound (adoreMatrix< T, N, 1 > &ymin, adoreMatrix< T, N, 1 > &ymax) |
virtual | ~ALFunction () |
ALFunction () | |
const adoreMatrix< T, N, 1 > | operator() (T x) const |
bool | isInDomain (T x) |
adoreMatrix< T, N, 1 > | f_bounded (T x) |
void | invalidateCachedBounds () |
Public Attributes | |
SUBFUN * | a |
SUBFUN * | b |
a helper class for combining two 1->N functions
typedef AScalarToN<T,2>::CT adore::mad::FunctionCombination_StackScalar< T >::CT |
typedef AScalarToN<T,2>::DT adore::mad::FunctionCombination_StackScalar< T >::DT |
typedef ALFunction<T,T> adore::mad::FunctionCombination_StackScalar< T >::SUBFUN |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
apply operation to function subdimensions: add a vector to rowi to rowj
Implements adore::mad::AScalarToN< T, 2 >.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
create a copy of child class object - is used for function operations
Implements adore::mad::ALFunction< T, adoreMatrix< T, N, 1 > >.
|
inlineoverridevirtual |
create a new function object, which is the derivative function
Implements adore::mad::ALFunction< T, adoreMatrix< T, N, 1 > >.
|
inlineoverridevirtual |
gives access to a scalar sub-function. does not create a new object, so use clone() to get your own instance of the subfunction.
Implements adore::mad::AScalarToN< T, 2 >.
|
inlineoverridevirtual |
function evaluation returns y of codomain type CT for a value x of domain type DT
Implements adore::mad::ALFunction< T, adoreMatrix< T, N, 1 > >.
|
inlineoverridevirtual |
scalar evaluation of function: for y-component dim
Implements adore::mad::AScalarToN< T, 2 >.
|
inlineoverridevirtual |
query upper limit of the domain
Implements adore::mad::ALFunction< T, adoreMatrix< T, N, 1 > >.
|
inlineoverridevirtual |
lower limit of the domain
Implements adore::mad::ALFunction< T, adoreMatrix< T, N, 1 > >.
|
inlinevirtual |
apply operation to function sub-dimensions: multiply with matrix of lower dimension in range rowi to rowj, with A.nc==A.nr==rowj-rowi+1
Implements adore::mad::AScalarToN< T, 2 >.
|
inlineoverridevirtual |
SUBFUN* adore::mad::FunctionCombination_StackScalar< T >::a |
SUBFUN* adore::mad::FunctionCombination_StackScalar< T >::b |