Sacado Package Browser (Single Doxygen Collection)  Version of the Day
Namespaces | Classes | Enumerations | Functions
Sacado::Fad Namespace Reference

Namespace for forward-mode AD classes. More...

Namespaces

 Exp
 

Classes

class  ArrayTraits
 
struct  ArrayValueType
 
struct  BaseExpr
 Meta-function for determining concrete base expression. More...
 
struct  BaseExpr< GeneralFad< T, Fad::MemPoolStorage< T > > >
 
struct  BaseExpr< GeneralFad< T, Fad::VectorDynamicStorage< T > > >
 
class  BLAS
 Fad specializations for Teuchos::BLAS wrappers. More...
 
class  ConstExpr
 Constant expression template. More...
 
class  DFad
 
class  DMFad
 Forward-mode AD class using dynamic memory allocation and expression templates. More...
 
class  DVFad
 Forward-mode AD class using dynamic memory allocation and expression templates. More...
 
class  DynamicStorage
 Derivative array storage class using dynamic memory allocation. More...
 
class  Expr
 Wrapper for a generic expression template. More...
 
class  Expr< GeneralFad< T, Storage > >
 GeneralFad expression template specialization. More...
 
class  Expr< SFadExprTag< T, Num >, ExprSpecDefault >
 Expression template forward-mode AD class with static memory allocation. More...
 
struct  ExprLevel
 Meta-function for determining nesting with an expression. More...
 
struct  ExprLevel< DMFad< T > >
 
struct  ExprLevel< DVFad< T > >
 
struct  ExprLevel< Expr< T > >
 
struct  ExprSpec
 
struct  ExprSpec< Expr< ExprT, Spec > >
 
struct  ExprSpecDefault
 
class  Fad_LAPACK
 Fad specializations for Teuchos::LAPACK wrappers. More...
 
class  GeneralFad
 Forward-mode AD class templated on the storage for the derivative array. More...
 
struct  IsFadExpr
 Determine whether a given type is an expression. More...
 
struct  IsFadExpr< DMFad< T > >
 
struct  IsFadExpr< DVFad< T > >
 
struct  IsFadExpr< Expr< T > >
 
class  MemPool
 Memory pool. More...
 
class  MemPoolManager
 Class to manage memory pools for different Fad dimensions. More...
 
class  MemPoolStorage
 Derivative array storage class using dynamic memory allocation. More...
 
struct  mp_array
 Dynamic array allocation class that works for any type. More...
 
struct  mp_array< T, true >
 Dynamic array allocation class that is specialized for scalar i.e., fundamental or built-in types (float, double, etc...). More...
 
class  SFad
 
struct  SFadExprTag
 A tag for specializing Expr for SFad expressions. More...
 
class  SimpleFad
 Forward-mode AD class using dynamic memory allocation but no expression templates. More...
 
class  SLFad
 
class  StaticStorage
 Derivative array storage class using static memory allocation. More...
 
class  Vector
 A class for storing a contiguously allocated array of Fad objects. This is a general definition that will work for all Fad types, and is merely a wrapper around std::vector. A specialization for Sacado::Fad::DVFad providing contiguous allocation of values and derivatives is below. More...
 
class  Vector< OrdinalType, Sacado::Fad::DVFad< ValueType > >
 A class for storing a contiguously allocated array of Fad objects where the values and derivative arrays for each Fad object are stored in contiguous memory. To preserve this structure, many vector operations aren't supported (like resizing). More...
 
class  VectorDynamicStorage
 Derivative array storage class using dynamic memory allocation. More...
 
class  ViewFad
 
class  ViewStorage
 Derivative array storage class that is a view into a contiguous memory allocation. It does not provide proper value semantics and thus should not be used in a general-purpose scalar type. More...
 

Enumerations

enum  VectorDerivOrientation { Row, Column }
 

Functions

template<typename ExprT >
KOKKOS_INLINE_FUNCTION bool operator! (const Expr< ExprT > &expr)
 
template<typename ExprT >
KOKKOS_INLINE_FUNCTION bool toBool (const Expr< ExprT > &x)
 
template<typename ExprT >
std::ostream & operator<< (std::ostream &os, const Expr< ExprT > &x)
 
template<typename ValueT >
SimpleFad< ValueT > operator+ (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > operator- (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > exp (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > log (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > log10 (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > sqrt (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > cos (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > sin (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > tan (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > acos (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > asin (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > atan (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > cosh (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > sinh (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > tanh (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > acosh (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > asinh (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > atanh (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > abs (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > fabs (const SimpleFad< ValueT > &a)
 
template<typename ValueT >
SimpleFad< ValueT > operator+ (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator+ (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator+ (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator- (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator- (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator- (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator* (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator* (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator* (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator/ (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator/ (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > operator/ (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > pow (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > pow (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > pow (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > atan2 (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > atan2 (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > atan2 (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > max (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > max (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > max (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
SimpleFad< ValueT > min (const SimpleFad< ValueT > &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > min (const typename SimpleFad< ValueT >::value_type &a, const SimpleFad< ValueT > &b)
 
template<typename ValueT >
SimpleFad< ValueT > min (const SimpleFad< ValueT > &a, const typename SimpleFad< ValueT >::value_type &b)
 
template<typename ValueT >
bool operator! (const SimpleFad< ValueT > &a)
 
template<typename T >
bool toBool (const SimpleFad< T > &x)
 
template<typename ValueT >
std::ostream & operator<< (std::ostream &os, const SimpleFad< ValueT > &x)
 

Detailed Description

Namespace for forward-mode AD classes.

Enumeration Type Documentation

◆ VectorDerivOrientation

Enumerator
Row 
Column 

Derivatives are stored row-wise (strided)

Derivatives ar stored column-wise (unit stride)

Definition at line 42 of file Sacado_Fad_Vector.hpp.

Function Documentation

◆ operator!() [1/2]

template<typename ExprT >
KOKKOS_INLINE_FUNCTION bool Sacado::Fad::operator! ( const Expr< ExprT > &  expr)

Definition at line 1431 of file Sacado_Fad_Ops.hpp.

◆ toBool() [1/2]

template<typename ExprT >
KOKKOS_INLINE_FUNCTION bool Sacado::Fad::toBool ( const Expr< ExprT > &  x)

Definition at line 1447 of file Sacado_Fad_Ops.hpp.

◆ operator<<() [1/2]

template<typename ExprT >
std::ostream& Sacado::Fad::operator<< ( std::ostream &  os,
const Expr< ExprT > &  x 
)

Definition at line 1502 of file Sacado_Fad_Ops.hpp.

◆ operator+() [1/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator+ ( const SimpleFad< ValueT > &  a)

Definition at line 44 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator-() [1/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator- ( const SimpleFad< ValueT > &  a)

Definition at line 50 of file Sacado_Fad_SimpleFadOps.hpp.

◆ exp()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::exp ( const SimpleFad< ValueT > &  a)

Definition at line 56 of file Sacado_Fad_SimpleFadOps.hpp.

◆ log()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::log ( const SimpleFad< ValueT > &  a)

Definition at line 63 of file Sacado_Fad_SimpleFadOps.hpp.

◆ log10()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::log10 ( const SimpleFad< ValueT > &  a)

Definition at line 69 of file Sacado_Fad_SimpleFadOps.hpp.

◆ sqrt()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::sqrt ( const SimpleFad< ValueT > &  a)

Definition at line 76 of file Sacado_Fad_SimpleFadOps.hpp.

◆ cos()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::cos ( const SimpleFad< ValueT > &  a)

Definition at line 94 of file Sacado_Fad_SimpleFadOps.hpp.

◆ sin()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::sin ( const SimpleFad< ValueT > &  a)

Definition at line 100 of file Sacado_Fad_SimpleFadOps.hpp.

◆ tan()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::tan ( const SimpleFad< ValueT > &  a)

Definition at line 106 of file Sacado_Fad_SimpleFadOps.hpp.

◆ acos()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::acos ( const SimpleFad< ValueT > &  a)

Definition at line 114 of file Sacado_Fad_SimpleFadOps.hpp.

◆ asin()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::asin ( const SimpleFad< ValueT > &  a)

Definition at line 121 of file Sacado_Fad_SimpleFadOps.hpp.

◆ atan()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::atan ( const SimpleFad< ValueT > &  a)

Definition at line 128 of file Sacado_Fad_SimpleFadOps.hpp.

◆ cosh()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::cosh ( const SimpleFad< ValueT > &  a)

Definition at line 135 of file Sacado_Fad_SimpleFadOps.hpp.

◆ sinh()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::sinh ( const SimpleFad< ValueT > &  a)

Definition at line 141 of file Sacado_Fad_SimpleFadOps.hpp.

◆ tanh()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::tanh ( const SimpleFad< ValueT > &  a)

Definition at line 147 of file Sacado_Fad_SimpleFadOps.hpp.

◆ acosh()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::acosh ( const SimpleFad< ValueT > &  a)

Definition at line 155 of file Sacado_Fad_SimpleFadOps.hpp.

◆ asinh()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::asinh ( const SimpleFad< ValueT > &  a)

Definition at line 162 of file Sacado_Fad_SimpleFadOps.hpp.

◆ atanh()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::atanh ( const SimpleFad< ValueT > &  a)

Definition at line 169 of file Sacado_Fad_SimpleFadOps.hpp.

◆ abs()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::abs ( const SimpleFad< ValueT > &  a)

Definition at line 176 of file Sacado_Fad_SimpleFadOps.hpp.

◆ fabs()

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::fabs ( const SimpleFad< ValueT > &  a)

Definition at line 185 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator+() [2/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator+ ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 194 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator+() [3/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator+ ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 213 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator+() [4/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator+ ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 220 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator-() [2/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator- ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 227 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator-() [3/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator- ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 246 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator-() [4/4]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator- ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 253 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator*() [1/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator* ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 260 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator*() [2/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator* ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 280 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator*() [3/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator* ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 287 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator/() [1/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator/ ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 294 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator/() [2/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator/ ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 318 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator/() [3/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::operator/ ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 325 of file Sacado_Fad_SimpleFadOps.hpp.

◆ pow() [1/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::pow ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 332 of file Sacado_Fad_SimpleFadOps.hpp.

◆ pow() [2/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::pow ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 366 of file Sacado_Fad_SimpleFadOps.hpp.

◆ pow() [3/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::pow ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 378 of file Sacado_Fad_SimpleFadOps.hpp.

◆ atan2() [1/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::atan2 ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 390 of file Sacado_Fad_SimpleFadOps.hpp.

◆ atan2() [2/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::atan2 ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 418 of file Sacado_Fad_SimpleFadOps.hpp.

◆ atan2() [3/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::atan2 ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 426 of file Sacado_Fad_SimpleFadOps.hpp.

◆ max() [1/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::max ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 434 of file Sacado_Fad_SimpleFadOps.hpp.

◆ max() [2/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::max ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 468 of file Sacado_Fad_SimpleFadOps.hpp.

◆ max() [3/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::max ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 483 of file Sacado_Fad_SimpleFadOps.hpp.

◆ min() [1/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::min ( const SimpleFad< ValueT > &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 498 of file Sacado_Fad_SimpleFadOps.hpp.

◆ min() [2/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::min ( const typename SimpleFad< ValueT >::value_type &  a,
const SimpleFad< ValueT > &  b 
)

Definition at line 532 of file Sacado_Fad_SimpleFadOps.hpp.

◆ min() [3/3]

template<typename ValueT >
SimpleFad<ValueT> Sacado::Fad::min ( const SimpleFad< ValueT > &  a,
const typename SimpleFad< ValueT >::value_type &  b 
)

Definition at line 547 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator!() [2/2]

template<typename ValueT >
bool Sacado::Fad::operator! ( const SimpleFad< ValueT > &  a)
inline

Definition at line 613 of file Sacado_Fad_SimpleFadOps.hpp.

◆ toBool() [2/2]

template<typename T >
bool Sacado::Fad::toBool ( const SimpleFad< T > &  x)

Definition at line 628 of file Sacado_Fad_SimpleFadOps.hpp.

◆ operator<<() [2/2]

template<typename ValueT >
std::ostream& Sacado::Fad::operator<< ( std::ostream &  os,
const SimpleFad< ValueT > &  x 
)

Definition at line 680 of file Sacado_Fad_SimpleFadOps.hpp.