Sacado::Fad::SimpleFad< ValueT > Class Template Reference

Forward-mode AD class using dynamic memory allocation but no expression templates. More...

#include <Sacado_Fad_SimpleFad.hpp>

Inheritance diagram for Sacado::Fad::SimpleFad< ValueT >:
Inheritance graph
[legend]

List of all members.

Classes

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

Public Types

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

Public Member Functions

 ~SimpleFad ()
 Destructor.
SimpleFadoperator= (const ValueT &v)
 Assignment operator with constant right-hand-side.
SimpleFadoperator= (const typename dummy< ValueT, ScalarT >::type &v)
 Assignment operator with constant right-hand-side.
SimpleFadoperator= (const SimpleFad &x)
 Assignment operator with SimpleFad right-hand-side.
SimpleFadoperator+= (const SimpleFad &x)
 Addition-assignment operator with Expr right-hand-side.
SimpleFadoperator-= (const SimpleFad &x)
 Subtraction-assignment operator with Expr right-hand-side.
SimpleFadoperator*= (const SimpleFad &x)
 Multiplication-assignment operator with Expr right-hand-side.
SimpleFadoperator/= (const SimpleFad &x)
 Division-assignment operator with Expr right-hand-side.

Initialization methods



 SimpleFad ()
 Default constructor.
 SimpleFad (const ValueT &x)
 Constructor with supplied value x of type ValueT.
 SimpleFad (const typename dummy< ValueT, ScalarT >::type &x)
 Constructor with supplied value x of type ScalarT.
 SimpleFad (const int sz, const ValueT &x)
 Constructor with size sz and value x.
 SimpleFad (const int sz, const int i, const ValueT &x)
 Constructor with size sz, index i, and value x.
 SimpleFad (const SimpleFad &x)
 Copy constructor.
 SimpleFad (const SimpleFad &x, const ValueT &v, const ValueT &partial)
 Tangent copy constructor.

Detailed Description

template<typename ValueT>
class Sacado::Fad::SimpleFad< ValueT >

Forward-mode AD class using dynamic memory allocation but no expression templates.

This is the user-level class for forward mode AD with dynamic memory allocation, and is appropriate for whenever the number of derivative components is not known at compile time. The user interface is provided by Sacado::Fad::GeneralFad.

Definition at line 50 of file Sacado_Fad_SimpleFad.hpp.


Member Typedef Documentation

template<typename ValueT>
typedef ScalarType<ValueT>::type Sacado::Fad::SimpleFad< ValueT >::ScalarT

Typename of scalar's (which may be different from ValueT).

Definition at line 42 of file Sacado_Fad_SimpleFad.hpp.


Constructor & Destructor Documentation

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad (  )  [inline]

Default constructor.

Initializes value to 0 and derivative array is empty

Definition at line 59 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad ( const ValueT &  x  )  [inline]

Constructor with supplied value x of type ValueT.

Initializes value to x and derivative array is empty

Definition at line 66 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad ( 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.

Definition at line 74 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad ( 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

Definition at line 81 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad ( 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.

Definition at line 90 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad ( const SimpleFad< ValueT > &  x  )  [inline]

Copy constructor.

Definition at line 94 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::SimpleFad ( const SimpleFad< ValueT > &  x,
const ValueT &  v,
const ValueT &  partial 
) [inline]

Tangent copy constructor.

Definition at line 98 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
Sacado::Fad::SimpleFad< ValueT >::~SimpleFad (  )  [inline]

Destructor.

Definition at line 107 of file Sacado_Fad_SimpleFad.hpp.


Member Function Documentation

template<typename ValueT>
SimpleFad& Sacado::Fad::SimpleFad< ValueT >::operator= ( const ValueT &  v  )  [inline]

Assignment operator with constant right-hand-side.

Reimplemented from Sacado::Fad::GeneralFad< ValueT, DynamicStorage< ValueT > >.

Definition at line 110 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
SimpleFad& Sacado::Fad::SimpleFad< ValueT >::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.

Definition at line 119 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT>
SimpleFad& Sacado::Fad::SimpleFad< ValueT >::operator= ( const SimpleFad< ValueT > &  x  )  [inline]

Assignment operator with SimpleFad right-hand-side.

Definition at line 125 of file Sacado_Fad_SimpleFad.hpp.

template<typename ValueT >
Sacado::Fad::SimpleFad< ValueT > & Sacado::Fad::SimpleFad< ValueT >::operator+= ( const SimpleFad< ValueT > &  x  )  [inline]

Addition-assignment operator with Expr right-hand-side.

Definition at line 37 of file Sacado_Fad_SimpleFadImp.hpp.

template<typename ValueT >
Sacado::Fad::SimpleFad< ValueT > & Sacado::Fad::SimpleFad< ValueT >::operator-= ( const SimpleFad< ValueT > &  x  )  [inline]

Subtraction-assignment operator with Expr right-hand-side.

Definition at line 74 of file Sacado_Fad_SimpleFadImp.hpp.

template<typename ValueT >
Sacado::Fad::SimpleFad< ValueT > & Sacado::Fad::SimpleFad< ValueT >::operator*= ( const SimpleFad< ValueT > &  x  )  [inline]

Multiplication-assignment operator with Expr right-hand-side.

Definition at line 112 of file Sacado_Fad_SimpleFadImp.hpp.

template<typename ValueT >
Sacado::Fad::SimpleFad< ValueT > & Sacado::Fad::SimpleFad< ValueT >::operator/= ( const SimpleFad< ValueT > &  x  )  [inline]

Division-assignment operator with Expr right-hand-side.

Definition at line 156 of file Sacado_Fad_SimpleFadImp.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 10:19:44 2011 for Sacado Package Browser (Single Doxygen Collection) by  doxygen 1.6.3