Sacado Package Browser (Single Doxygen Collection) Version of the Day
Classes | Public Types | Public Member Functions
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 ValueT value_type
 Typename of values.
typedef ScalarType< ValueT >::type ScalarT
 Typename of scalar's (which may be different from ValueT)

Public Member Functions

 ~SimpleFad ()
 Destructor.
bool isEqualTo (const SimpleFad &x) const
 Returns whether two Fad objects have the same values.
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 54 of file Sacado_Fad_SimpleFad.hpp.


Member Typedef Documentation

template<typename ValueT>
typedef ValueT Sacado::Fad::SimpleFad< ValueT >::value_type

Typename of values.

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

Definition at line 59 of file Sacado_Fad_SimpleFad.hpp.

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 62 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 79 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 86 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 94 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 101 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 110 of file Sacado_Fad_SimpleFad.hpp.

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

Copy constructor.

Definition at line 114 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 118 of file Sacado_Fad_SimpleFad.hpp.

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

Destructor.

Definition at line 127 of file Sacado_Fad_SimpleFad.hpp.


Member Function Documentation

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

Returns whether two Fad objects have the same values.

Definition at line 130 of file Sacado_Fad_SimpleFad.hpp.

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 140 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 149 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 155 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