Sacado::Fad::SFad< ValueT, Num > Class Template Reference

Forward-mode AD class using static memory allocation. More...

#include <Sacado_Fad_SFad.hpp>

Inheritance diagram for Sacado::Fad::SFad< ValueT, Num >:

Inheritance graph
[legend]
Collaboration diagram for Sacado::Fad::SFad< ValueT, Num >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ScalarType< ValueT
>::type 
ScalarT
 Typename of scalar's (which may be different from ValueT).

Public Member Functions

 ~SFad ()
 Destructor.
SFadoperator= (const ValueT &v)
 Assignment operator with constant right-hand-side.
SFadoperator= (const typename dummy< ValueT, ScalarT >::type &v)
 Assignment operator with constant right-hand-side.
SFadoperator= (const SFad &x)
 Assignment operator with DFad right-hand-side.
template<typename S>
SFadoperator= (const Expr< S > &x)
 Assignment operator with any expression right-hand-side.
Initialization methods
 SFad ()
 Default constructor.
 SFad (const ValueT &x)
 Constructor with supplied value x.
 SFad (const typename dummy< ValueT, ScalarT >::type &x)
 Constructor with supplied value x of type ScalarT.
 SFad (const int sz, const ValueT &x)
 Constructor with size sz and value x.
 SFad (const int sz, const int i, const ValueT &x)
 Constructor with size sz, index i, and value x.
 SFad (const SFad &x)
 Copy constructor.
template<typename S>
 SFad (const Expr< S > &x)
 Copy constructor from any Expression object.

Classes

struct  apply
 Turn SFad into a meta-function class usable with mpl::apply. More...

Detailed Description

template<typename ValueT, int Num>
class Sacado::Fad::SFad< ValueT, Num >

Forward-mode AD class using static memory allocation.

This is the user-level class for forward mode AD with static memory allocation, and is appropriate for whenever the number of derivative components is known at compile time. The size of the derivative array is fixed by the template parameter Num.


Constructor & Destructor Documentation

template<typename ValueT, int Num>
Sacado::Fad::SFad< ValueT, Num >::SFad (  )  [inline]

Default constructor.

Initializes value to 0 and derivative array is empty

template<typename ValueT, int Num>
Sacado::Fad::SFad< ValueT, Num >::SFad ( const ValueT &  x  )  [inline]

Constructor with supplied value x.

Initializes value to x and derivative array is empty

template<typename ValueT, int Num>
Sacado::Fad::SFad< ValueT, Num >::SFad ( const typename dummy< ValueT, ScalarT >::type &  x  )  [inline]

Constructor with supplied value x of type ScalarT.

Initializes value to ValueT(x) and derivative array is empty. Creates a dummy overload when ValueT and ScalarT are the same type.

template<typename ValueT, int Num>
Sacado::Fad::SFad< ValueT, Num >::SFad ( const int  sz,
const ValueT &  x 
) [inline]

Constructor with size sz and value x.

Initializes value to x and derivative array 0 of length sz

template<typename ValueT, int Num>
Sacado::Fad::SFad< ValueT, Num >::SFad ( const int  sz,
const int  i,
const ValueT &  x 
) [inline]

Constructor with size sz, index i, and value x.

Initializes value to x and derivative array of length sz as row i of the identity matrix, i.e., sets derivative component i to 1 and all other's to zero.


Member Function Documentation

template<typename ValueT, int Num>
SFad& Sacado::Fad::SFad< ValueT, Num >::operator= ( const typename dummy< ValueT, ScalarT >::type &  v  )  [inline]

Assignment operator with constant right-hand-side.

Creates a dummy overload when ValueT and ScalarT are the same type.


The documentation for this class was generated from the following file:
Generated on Wed May 12 21:39:26 2010 for Sacado by  doxygen 1.4.7