Sacado  Development
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Classes | Public Types | List of all members
Sacado::Fad::Exp::GeneralFad< Storage > Class Template Reference

Forward-mode AD class templated on the storage for the derivative array. More...

#include <Sacado_Fad_Exp_GeneralFad.hpp>

Inheritance diagram for Sacado::Fad::Exp::GeneralFad< Storage >:
Inheritance graph
[legend]
Collaboration diagram for Sacado::Fad::Exp::GeneralFad< Storage >:
Collaboration graph
[legend]

Classes

struct  apply
 Turn GeneralFad into a meta-function class usable with mpl::apply. More...
 
struct  apply_N
 Replace static derivative length. More...
 

Public Types

typedef Storage StorageType
 Storage type.
 
typedef Expr< GeneralFad
< Storage > > 
ExprType
 Expression type.
 
typedef Extender< Storage > ExtenderType
 Extender type.
 
typedef ScalarType< value_type >
::type 
scalar_type
 Typename of scalar's (which may be different from T)
 
- Public Types inherited from Sacado::Fad::Exp::Expr< GeneralFad< Storage > >
typedef GeneralFad< Storage > derived_type
 Typename of derived object, returned by derived() More...
 
- Public Types inherited from Sacado::Fad::Exp::Extender< Storage >
typedef ExprSpecDefault expr_spec_type
 

Public Member Functions

Initialization methods
 GeneralFad ()=default
 Default constructor.
 
template<typename S >
KOKKOS_INLINE_FUNCTION GeneralFad (const S &x, SACADO_ENABLE_VALUE_CTOR_DECL)
 Constructor with value.
 
KOKKOS_INLINE_FUNCTION GeneralFad (const int sz, const value_type &x, const DerivInit zero_out=InitDerivArray)
 Constructor with size sz. More...
 
KOKKOS_INLINE_FUNCTION GeneralFad (const int sz, const int i, const value_type &x)
 Constructor with size sz, index i, and value x. More...
 
KOKKOS_INLINE_FUNCTION GeneralFad (const Storage &s)
 Constructor with supplied storage s.
 
 GeneralFad (const GeneralFad &x)=default
 Copy constructor.
 
template<typename S >
KOKKOS_INLINE_FUNCTION GeneralFad (const Expr< S > &x, SACADO_EXP_ENABLE_EXPR_CTOR_DECL)
 Copy constructor from any Expression object.
 
 ~GeneralFad ()=default
 Destructor.
 
KOKKOS_INLINE_FUNCTION void diff (const int ith, const int n)
 Set GeneralFad object as the ith independent variable. More...
 
template<typename S >
KOKKOS_INLINE_FUNCTION SACADO_EXP_ENABLE_EXPR_FUNC (bool) isEqualTo(const Expr< S > &xx) const
 Returns whether two Fad objects have the same values.
 
Derivative accessor methods
KOKKOS_INLINE_FUNCTION int availableSize () const
 Returns number of derivative components that can be stored without reallocation.
 
KOKKOS_INLINE_FUNCTION bool hasFastAccess () const
 Returns true if derivative array is not empty.
 
KOKKOS_INLINE_FUNCTION void setIsConstant (bool is_const)
 Set whether variable is constant.
 
Assignment operators
template<typename S >
KOKKOS_INLINE_FUNCTION SACADO_ENABLE_VALUE_FUNC (GeneralFad &) operator
 Assignment operator with constant right-hand-side.
 
- Public Member Functions inherited from Sacado::Fad::Exp::Expr< GeneralFad< Storage > >
KOKKOS_INLINE_FUNCTION const
derived_type
derived () const
 Return derived object. More...
 
KOKKOS_INLINE_FUNCTION const
volatile derived_type
derived () const volatile
 Return derived object. More...
 

Detailed Description

template<typename Storage>
class Sacado::Fad::Exp::GeneralFad< Storage >

Forward-mode AD class templated on the storage for the derivative array.

This class provides a general forward mode AD implementation for any type of derivative array storage. It does not incorporate expression templates.

Constructor & Destructor Documentation

template<typename Storage>
KOKKOS_INLINE_FUNCTION Sacado::Fad::Exp::GeneralFad< Storage >::GeneralFad ( const int  sz,
const value_type &  x,
const DerivInit  zero_out = InitDerivArray 
)
inline

Constructor with size sz.

Initializes derivative array 0 of length sz

template<typename Storage>
KOKKOS_INLINE_FUNCTION Sacado::Fad::Exp::GeneralFad< Storage >::GeneralFad ( const int  sz,
const int  i,
const value_type &  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 Storage>
KOKKOS_INLINE_FUNCTION void Sacado::Fad::Exp::GeneralFad< Storage >::diff ( const int  ith,
const int  n 
)
inline

Set GeneralFad object as the ith independent variable.

Sets the derivative array of length n to the ith row of the identity matrix and has the same affect as the Implementation(const int sz, const int i, const T & x) constructor.


The documentation for this class was generated from the following file: