C++ template class for definition of and operation on variables in a Taylor model.
More...
Public Member Functions |
| T | B () const |
| | Return range bounder.
|
| T | bound () const |
| | Return range bounder.
|
| const T & | boundT () const |
| | Return reference to range bounder in T arithmetic.
|
| TaylorVariable< T > & | C () |
| | Recenter remainder term.
|
| TaylorVariable< T > & | center () |
| | Return reference to current remainder.
|
| double | constant () const |
| | Return coefficient value in constant term.
|
| TaylorModel< T > * | env () const |
| | Return pointer to TaylorModel environment.
|
| BooleanType | isCompact () const |
| double * | linear () const |
| | Return pointer to array of size nvar comprising coefficients in linear term.
|
| TaylorVariable< T > & | operator*= (const TaylorVariable< T > &) |
| TaylorVariable< T > & | operator*= (const double) |
| TaylorVariable< T > & | operator*= (const T &) |
| template<typename U > |
| TaylorVariable< T > & | operator+= (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< T > & | operator+= (const U &) |
| TaylorVariable< T > & | operator+= (const double) |
| template<typename U > |
| TaylorVariable< T > & | operator-= (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< T > & | operator-= (const U &) |
| TaylorVariable< T > & | operator-= (const double) |
| TaylorVariable< T > & | operator/= (const TaylorVariable< T > &) |
| TaylorVariable< T > & | operator/= (const double) |
| TaylorVariable< T > & | operator= (const double) |
| | More overloaded operators.
|
| TaylorVariable< T > & | operator= (const TaylorVariable< T > &) |
| TaylorVariable< T > & | operator= (const T &) |
| TaylorVariable< T > | P () const |
| | Cancel remainder error term and return polynomial part.
|
| double | P (const double *x) const |
| | Evaluate polynomial part at point x
|
| TaylorVariable< T > | polynomial () const |
| | Cancel remainder term and return polynomial part.
|
| double | polynomial (const double *x) const |
| | Evaluate polynomial part at point x
|
| double * | quadratic (const int opt=0) const |
| | Return pointer to array of size nvar comprising coefficients in quadratic term (diagonal coefs if opt=0; upper triangular part otherwise)
|
| T | R () const |
| | Return const reference to current remainder.
|
| double * | reference () const |
| | Return pointer to array of size nvar comprising reference point.
|
| T | remainder () const |
| | Return const reference to current remainder.
|
| TaylorVariable< T > & | set (TaylorModel< T > *TM, const unsigned int ix, const T &X) |
| | Set the index and range for the variable ivar, that belongs to the interval X.
|
| | TaylorVariable (const double d=0.) |
| | Constructor for a real scalar.
|
| | TaylorVariable (const T &B) |
| | Constructor for a T variable.
|
| | TaylorVariable (TaylorModel< T > *TM, const unsigned int ix, const T &X) |
| | Constructor for the variable ix, that belongs to the interval X
|
| | TaylorVariable (const TaylorVariable< T > &TV) |
| | Copy constructor for identical range bounder.
|
| template<typename U > |
| | TaylorVariable (TaylorModel< T > *&TM, const TaylorVariable< U > &TV) |
| | Copy constructor for different range bounder with implicit type conversion.
|
| template<typename U > |
| | TaylorVariable (TaylorModel< T > *&TM, const TaylorVariable< U > &TV, const T &(U::*method)() const ) |
| | Copy constructor for different range bounder with explicit type conversion class member function.
|
| template<typename U > |
| | TaylorVariable (TaylorModel< T > *&TM, const TaylorVariable< U > &TV, T(*method)(const U &)) |
| | Copy constructor for different range bounder with explicit type conversion non-class function.
|
| | TaylorVariable (TaylorModel< T > *TM, const double d=0.) |
| | Private constructor for a real scalar in a specific TaylorModel.
|
| | ~TaylorVariable () |
| | Class destructor.
|
Private Member Functions |
| const T & | _bndmon (const unsigned int i) const |
| | Get bounds on all monomial terms in TaylorModel.
|
| T & | _bound (T &bndmod) const |
| | Range bounder.
|
| T & | _bound_eigen (T &bndmod) const |
| | Range bounder - eignevalue decomposition-based approach.
|
| T & | _bound_LSB (T &bndmod) const |
| | Range bounder - Lin & Stadtherr approach.
|
| T & | _bound_naive (T &bndmod) const |
| | Range bounder - naive approach.
|
| void | _center_TM () |
| | Center remainder error term _bndrem.
|
| void | _clean () |
| | Clean private members.
|
| unsigned int | _expmon (const unsigned int i) const |
| | Get monomial term exponents in TaylorModel.
|
| void | _init () |
| | Initialize private members.
|
| TaylorVariable< T > | _intpow (const TaylorVariable< T > &TM, const int n) |
| | Recursive calculation of nonnegative integer powers.
|
| unsigned int | _nmon () const |
| | Get number of monomial terms in TaylorModel.
|
| unsigned int | _nord () const |
| | Get model order in TaylorModel.
|
| unsigned int | _nvar () const |
| | Get number of variables in TaylorModel.
|
| unsigned int | _posord (const unsigned int i) const |
| | Get term positions in TaylorModel.
|
| unsigned int | _prodmon (const unsigned int i, const unsigned int j) const |
| | Get exponents of monomial term products in TaylorModel.
|
| double | _refpoint (const unsigned int i) const |
| | Get reference point in TaylorModel.
|
| void | _reinit () |
| | Reinitialize private members.
|
| double | _scaling (const unsigned int i) const |
| | Get scaling in TaylorModel.
|
| TaylorVariable< T > * | _TV () const |
| | Get pointer to internal TaylorVariable in TaylorModel.
|
| void | _update_bndord () |
| | Update _bndord w/ (naive) bounds for individual terms of degrees 0,...,_nord()
|
| | TaylorVariable (TaylorModel< T > *TM, const T &B) |
| | Private constructor for a range in a specific TaylorModel.
|
Static Private Member Functions |
| static double * | _eigen (const unsigned int n, double *a) |
| | Wrapper to LAPACK function _dsyev doing eigenvalue decomposition of a symmetric matrix.
|
Private Attributes |
| T * | _bndord |
| | Bounds for individual terms of degrees 0,...,_nord+1.
|
| T * | _bndrem |
| | Pointer to the remainder error bound.
|
| T | _bndT |
| | Interval bound evaluated in T arithmetic.
|
| double * | _coefmon |
| | Coefficients for monomial terms 1,...,nmon.
|
| TaylorModel< T > * | _TM |
| | Pointer to underlying TaylorModel object.
|
Friends |
| template<typename U > |
| TaylorVariable< U > | acos (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | asin (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | atan (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | cos (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | exp (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | hull (const TaylorVariable< U > &, const TaylorVariable< U > &) |
| template<typename U > |
| bool | inter (TaylorVariable< U > &, const TaylorVariable< U > &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | inv (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | log (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator* (const TaylorVariable< U > &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator* (const double, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator* (const TaylorVariable< U > &, const double) |
| template<typename U > |
| TaylorVariable< U > | operator* (const U &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator* (const TaylorVariable< U > &, const U &) |
| template<typename U > |
| TaylorVariable< U > | operator+ (const TaylorVariable< U > &) |
| template<typename U , typename V > |
| TaylorVariable< U > | operator+ (const TaylorVariable< U > &, const TaylorVariable< V > &) |
| template<typename U , typename V > |
| TaylorVariable< U > | operator+ (const TaylorVariable< U > &, const V &) |
| template<typename U , typename V > |
| TaylorVariable< U > | operator+ (const V &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator+ (const double, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator+ (const TaylorVariable< U > &, const double) |
| template<typename U > |
| TaylorVariable< U > | operator- (const TaylorVariable< U > &) |
| template<typename U , typename V > |
| TaylorVariable< U > | operator- (const TaylorVariable< U > &, const TaylorVariable< V > &) |
| template<typename U , typename V > |
| TaylorVariable< U > | operator- (const TaylorVariable< U > &, const V &) |
| template<typename U , typename V > |
| TaylorVariable< U > | operator- (const V &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator- (const double, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator- (const TaylorVariable< U > &, const double) |
| template<typename U > |
| TaylorVariable< U > | operator/ (const TaylorVariable< U > &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator/ (const double, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | operator/ (const TaylorVariable< U > &, const double) |
| template<typename U > |
| std::ostream & | operator<< (std::ostream &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | pow (const TaylorVariable< U > &, const int) |
| template<typename U > |
| TaylorVariable< U > | pow (const TaylorVariable< U > &, const double) |
| template<typename U > |
| TaylorVariable< U > | pow (const double, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | pow (const TaylorVariable< U > &, const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | sin (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | sqr (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | sqrt (const TaylorVariable< U > &) |
| template<typename U > |
| TaylorVariable< U > | tan (const TaylorVariable< U > &) |
| template<typename U > |
| void | TaylorModel (const unsigned int nvar, const unsigned int nord) |
| class | TaylorVariable |
| template<typename U > |
| TaylorVariable< U > | xlog (const TaylorVariable< U > &) |
template<typename T>
class TaylorVariable< T >
C++ template class for definition of and operation on variables in a Taylor model.
mc::TaylorVariable<T> is a C++ template class for definition of and operation on the variables participating in a Taylor model of a factorable function. The template parameter T corresponds to the type used in computing the remainder error bound in the Taylor model.
Definition at line 50 of file taylor_variable.hpp.