Sacado  Development
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Classes | Public Types | Public Member Functions | List of all members
Sacado::FAD_NS::SFad< ValueT, Num > Class Template Reference

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

#include <Sacado_Fad_SFad_tmpl.hpp>

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

Classes

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

Public Types

typedef Expr< SFadExprTag
< ValueT, Num > > 
ExprType
 Base classes.
 
typedef ExprType::value_type value_type
 Typename of values.
 
typedef ExprType::scalar_type scalar_type
 Typename of scalar's (which may be different from value_type)
 
typedef ScalarType< ValueT >::type ScalarT
 Typename of scalar's (which may be different from ValueT)
 

Public Member Functions

KOKKOS_INLINE_FUNCTION ~SFad ()
 Destructor.
 
Initialization methods
KOKKOS_INLINE_FUNCTION SFad ()
 Default constructor. More...
 
template<typename S >
KOKKOS_INLINE_FUNCTION SFad (const S &x, SACADO_ENABLE_VALUE_CTOR_DECL)
 Constructor with supplied value x convertible to ValueT. More...
 
KOKKOS_INLINE_FUNCTION SFad (const int sz, const ValueT &x, const DerivInit zero_out=InitDerivArray)
 Constructor with size sz and value x. More...
 
KOKKOS_INLINE_FUNCTION SFad (const int sz, const int i, const ValueT &x)
 Constructor with size sz, index i, and value x. More...
 
KOKKOS_INLINE_FUNCTION SFad (const SFad &x)
 Copy constructor.
 
template<typename S >
KOKKOS_INLINE_FUNCTION SFad (const Expr< S > &x, SACADO_ENABLE_EXPR_CTOR_DECL)
 Copy constructor from any Expression object.
 

Detailed Description

template<typename ValueT, int Num>
class Sacado::FAD_NS::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>
KOKKOS_INLINE_FUNCTION Sacado::FAD_NS::SFad< ValueT, Num >::SFad ( )
inline

Default constructor.

Initializes value to 0 and derivative array is empty

template<typename ValueT , int Num>
template<typename S >
KOKKOS_INLINE_FUNCTION Sacado::FAD_NS::SFad< ValueT, Num >::SFad ( const S &  x,
SACADO_ENABLE_VALUE_CTOR_DECL   
)
inline

Constructor with supplied value x convertible to ValueT.

Initializes value to ValueT(x) and derivative array is empty.

template<typename ValueT , int Num>
KOKKOS_INLINE_FUNCTION Sacado::FAD_NS::SFad< ValueT, Num >::SFad ( const int  sz,
const ValueT &  x,
const DerivInit  zero_out = InitDerivArray 
)
inline

Constructor with size sz and value x.

Initializes value to x and derivative array 0 of length sz

template<typename ValueT , int Num>
KOKKOS_INLINE_FUNCTION Sacado::FAD_NS::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.


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