Sacado Development
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
Sacado::Tay::CacheTaylorImplementation< T > Class Template Reference

Taylor polynomial class using caching expression templates. More...

#include <Sacado_Tay_CacheTaylor.hpp>

Inheritance diagram for Sacado::Tay::CacheTaylorImplementation< T >:
Inheritance graph

List of all members.

Public Types

typedef T value_type
 Typename of values.

Public Member Functions

 CacheTaylorImplementation ()
 Default constructor.
 CacheTaylorImplementation (const T &x)
 Constructor with supplied value x.
 CacheTaylorImplementation (int d, const T &x)
 Constructor with degree d and value x.
 CacheTaylorImplementation (const CacheTaylorImplementation &x)
 Copy constructor.
 ~CacheTaylorImplementation ()
void resize (int d, bool keep_coeffs)
 Resize polynomial to degree d.
Value accessor methods
const T & val () const
 Returns value.
T & val ()
 Returns value.
Taylor coefficient accessor methods
int degree () const
 Returns degree of polynomial.
bool hasFastAccess (int d) const
 Returns true if polynomial has degree >= d.
const std::valarray< T > & coeff () const
 Returns Taylor coefficient array.
const T coeff (int i) const
 Returns degree i term with bounds checking.
coeff (int i)
 Returns degree i term with bounds checking.
T & fastAccessCoeff (int i)
 Returns degree i term without bounds checking.
const T & fastAccessCoeff (int i) const
 Returns degree i term without bounds checking.
void allocateCache (int d) const
 Allocate coefficient cache.
template<typename S >
bool isEqualTo (const Expr< S > &x) const
 Returns whether two Taylor objects have the same values.

Protected Member Functions

void resizeCoeffs (int dnew)
 Resize coefficient array to new size.
int coeff_size () const

Protected Attributes

std::valarray< T > coeff_
 Taylor polynomial coefficients.

Detailed Description

template<typename T>
class Sacado::Tay::CacheTaylorImplementation< T >

Taylor polynomial class using caching expression templates.

This class provides the implementation of the Taylor object required for expression templating. Class CacheTaylor provides the complete user inteface.

Constructor & Destructor Documentation

template<typename T >
Sacado::Tay::CacheTaylorImplementation< T >::CacheTaylorImplementation ( const T &  x) [inline]

Constructor with supplied value x.

Sets the first coefficient to x

template<typename T >
Sacado::Tay::CacheTaylorImplementation< T >::CacheTaylorImplementation ( int  d,
const T &  x 
) [inline]

Constructor with degree d and value x.

Initializes first coeffienct to x and of a polynomial of degree d

Member Function Documentation

template<typename T >
void Sacado::Tay::CacheTaylorImplementation< T >::resize ( int  d,
bool  keep_coeffs 
) [inline]

Resize polynomial to degree d.

Coefficients are preserved if keep_coeffs is true, otherwise all coefficients are reset to zero.

The documentation for this class was generated from the following file:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends