ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
adore::mad::AScalarToN< T, N > Class Template Referenceabstract

#include <alfunction.h>

Inheritance diagram for adore::mad::AScalarToN< T, N >:
Inheritance graph
Collaboration diagram for adore::mad::AScalarToN< T, N >:
Collaboration graph

Public Types

typedef T DT
 
typedef adoreMatrix< T, N, 1 > CT
 
typedef ALFunction< DT, T > SUBFUN
 

Public Member Functions

void toArray (DT *xvec, T *yvec, unsigned int count)
 
void toArray (DT *xvec, T *yvec, unsigned int count, unsigned int row)
 
virtual SUBFUNdimension (int i)=0
 
virtual T fi (DT x, int dim) const =0
 
virtual void multiply (adoreMatrix< T, 0, 0 > A, int rowi, int rowj)=0
 
virtual void add (adoreMatrix< T, 0, 1 > b, int rowi, int rowj)=0
 
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 T limitHi () const=0
 
virtual T limitLo () const=0
 
virtual adoreMatrix< T, N, 1 > f (T x) const=0
 
virtual void f (T *xvec, adoreMatrix< T, N, 1 > *yvec, unsigned int count) const
 
virtual ALFunction< T, adoreMatrix< T, N, 1 > > * clone ()=0
 
virtual ALFunction< T, adoreMatrix< T, N, 1 > > * create_derivative ()=0
 
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 ()
 

Detailed Description

template<typename T, int N>
class adore::mad::AScalarToN< T, N >

An abstract function mapping from a scalar domain to a vector codomain, f:T->T^N

Member Typedef Documentation

◆ CT

template<typename T , int N>
typedef adoreMatrix<T, N, 1> adore::mad::AScalarToN< T, N >::CT

◆ DT

template<typename T , int N>
typedef T adore::mad::AScalarToN< T, N >::DT

◆ SUBFUN

template<typename T , int N>
typedef ALFunction<DT, T> adore::mad::AScalarToN< T, N >::SUBFUN

Member Function Documentation

◆ add()

◆ dimension()

◆ fi()

◆ multiply()

◆ operator*=()

template<typename T , int N>
virtual void adore::mad::AScalarToN< T, N >::operator*= ( adoreMatrix< T, N, N >  A)
inlinevirtual

short notations

Here is the call graph for this function:

◆ operator+=()

template<typename T , int N>
virtual void adore::mad::AScalarToN< T, N >::operator+= ( adoreMatrix< T, N, 1 >  b)
inlinevirtual
Here is the call graph for this function:

◆ operator-=()

template<typename T , int N>
virtual void adore::mad::AScalarToN< T, N >::operator-= ( adoreMatrix< T, N, 1 >  b)
inlinevirtual
Here is the call graph for this function:

◆ toArray() [1/2]

template<typename T , int N>
void adore::mad::AScalarToN< T, N >::toArray ( DT xvec,
T *  yvec,
unsigned int  count 
)
inline

evaluate multi, yvec must have at least size sizeof(T[N*count]) ordering is y0(x[0]),y1(x[0]),y2(x[0]),...,yN(x[0]),y0(x[1]),...yN(x[1]),...,y0(x[count-1]),...,yN(x[count-1])

Here is the call graph for this function:

◆ toArray() [2/2]

template<typename T , int N>
void adore::mad::AScalarToN< T, N >::toArray ( DT xvec,
T *  yvec,
unsigned int  count,
unsigned int  row 
)
inline
Here is the call graph for this function:

The documentation for this class was generated from the following file: