Sacado Development
Loading...
Searching...
No Matches
Sacado::Fad Namespace Reference

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

Classes

class  ArrayTraits
struct  ArrayValueType
class  BLAS
 Fad specializations for Teuchos::BLAS wrappers. More...
struct  ArrayValueType< Sacado::Fad::DFad< ValueT > >
struct  ArrayValueType< Sacado::Fad::SFad< ValueT, Num > >
struct  ArrayValueType< Sacado::Fad::SLFad< ValueT, Num > >
struct  ArrayValueType< Sacado::Fad::DVFad< ValueT > >
struct  ArrayValueType< Sacado::ELRFad::DFad< ValueT > >
struct  ArrayValueType< Sacado::ELRFad::SFad< ValueT, Num > >
struct  ArrayValueType< Sacado::ELRFad::SLFad< ValueT, Num > >
struct  ArrayValueType< Sacado::CacheFad::DFad< ValueT > >
class  DynamicStorage
 Derivative array storage class using dynamic memory allocation. More...
class  ExprAssign
 Class that implements various forms of expression assignments. More...
class  ExprAssign< DstType, typename std::enable_if< Sacado::IsStaticallySized< DstType >::value >::type >
 Specialization of ExprAssign for statically sized storage types. More...
class  Expr
 Wrapper for a generic expression template. More...
struct  ExprLevel
 Meta-function for determining nesting with an expression. More...
struct  ExprLevel< Expr< T > >
struct  IsFadExpr
 Determine whether a given type is an expression. More...
struct  IsFadExpr< Expr< T > >
class  ExprSpecDefault
struct  ExprSpec
class  Extender
 Extension class for extending interface of its argument. More...
class  GeneralFad
 Forward-mode AD class templated on the storage for the derivative array. More...
struct  ExprLevel< GeneralFad< S > >
struct  IsFadExpr< GeneralFad< S > >
class  Expr< GeneralFad< T, Storage > >
 GeneralFad expression template specialization. More...
class  StaticStorage
 Derivative array storage class using static memory allocation. More...
class  StaticFixedStorage
 Derivative array storage class using static, fixed memory allocation. More...
class  Fad_LAPACK
 Fad specializations for Teuchos::LAPACK wrappers. More...
class  UnaryPlusOp
class  UnaryPlusOp< T, ExprSpecDefault >
struct  ExprLevel< UnaryPlusOp< T, E > >
struct  IsFadExpr< UnaryPlusOp< T, E > >
class  UnaryMinusOp
class  UnaryMinusOp< T, ExprSpecDefault >
struct  ExprLevel< UnaryMinusOp< T, E > >
struct  IsFadExpr< UnaryMinusOp< T, E > >
class  ExpOp
class  ExpOp< T, ExprSpecDefault >
struct  ExprLevel< ExpOp< T, E > >
struct  IsFadExpr< ExpOp< T, E > >
class  ExpM1Op
class  ExpM1Op< T, ExprSpecDefault >
struct  ExprLevel< ExpM1Op< T, E > >
struct  IsFadExpr< ExpM1Op< T, E > >
class  LogOp
class  LogOp< T, ExprSpecDefault >
struct  ExprLevel< LogOp< T, E > >
struct  IsFadExpr< LogOp< T, E > >
class  Log1POp
class  Log1POp< T, ExprSpecDefault >
struct  ExprLevel< Log1POp< T, E > >
struct  IsFadExpr< Log1POp< T, E > >
class  Log10Op
class  Log10Op< T, ExprSpecDefault >
struct  ExprLevel< Log10Op< T, E > >
struct  IsFadExpr< Log10Op< T, E > >
class  SqrtOp
class  SqrtOp< T, ExprSpecDefault >
struct  ExprLevel< SqrtOp< T, E > >
struct  IsFadExpr< SqrtOp< T, E > >
class  CosOp
class  CosOp< T, ExprSpecDefault >
struct  ExprLevel< CosOp< T, E > >
struct  IsFadExpr< CosOp< T, E > >
class  SinOp
class  SinOp< T, ExprSpecDefault >
struct  ExprLevel< SinOp< T, E > >
struct  IsFadExpr< SinOp< T, E > >
class  TanOp
class  TanOp< T, ExprSpecDefault >
struct  ExprLevel< TanOp< T, E > >
struct  IsFadExpr< TanOp< T, E > >
class  ACosOp
class  ACosOp< T, ExprSpecDefault >
struct  ExprLevel< ACosOp< T, E > >
struct  IsFadExpr< ACosOp< T, E > >
class  ASinOp
class  ASinOp< T, ExprSpecDefault >
struct  ExprLevel< ASinOp< T, E > >
struct  IsFadExpr< ASinOp< T, E > >
class  ATanOp
class  ATanOp< T, ExprSpecDefault >
struct  ExprLevel< ATanOp< T, E > >
struct  IsFadExpr< ATanOp< T, E > >
class  CoshOp
class  CoshOp< T, ExprSpecDefault >
struct  ExprLevel< CoshOp< T, E > >
struct  IsFadExpr< CoshOp< T, E > >
class  SinhOp
class  SinhOp< T, ExprSpecDefault >
struct  ExprLevel< SinhOp< T, E > >
struct  IsFadExpr< SinhOp< T, E > >
class  TanhOp
class  TanhOp< T, ExprSpecDefault >
struct  ExprLevel< TanhOp< T, E > >
struct  IsFadExpr< TanhOp< T, E > >
class  ACoshOp
class  ACoshOp< T, ExprSpecDefault >
struct  ExprLevel< ACoshOp< T, E > >
struct  IsFadExpr< ACoshOp< T, E > >
class  ASinhOp
class  ASinhOp< T, ExprSpecDefault >
struct  ExprLevel< ASinhOp< T, E > >
struct  IsFadExpr< ASinhOp< T, E > >
class  ATanhOp
class  ATanhOp< T, ExprSpecDefault >
struct  ExprLevel< ATanhOp< T, E > >
struct  IsFadExpr< ATanhOp< T, E > >
class  AbsOp
class  AbsOp< T, ExprSpecDefault >
struct  ExprLevel< AbsOp< T, E > >
struct  IsFadExpr< AbsOp< T, E > >
class  FAbsOp
class  FAbsOp< T, ExprSpecDefault >
struct  ExprLevel< FAbsOp< T, E > >
struct  IsFadExpr< FAbsOp< T, E > >
class  CbrtOp
class  CbrtOp< T, ExprSpecDefault >
struct  ExprLevel< CbrtOp< T, E > >
struct  IsFadExpr< CbrtOp< T, E > >
class  SafeSqrtOp
class  SafeSqrtOp< T, ExprSpecDefault, true >
class  SafeSqrtOp< T, ExprSpecDefault, false >
struct  ExprLevel< SafeSqrtOp< T, E > >
struct  IsFadExpr< SafeSqrtOp< T, E > >
class  AdditionOp
class  AdditionOp< T1, T2, false, false, ExprSpecDefault >
class  AdditionOp< T1, T2, false, true, ExprSpecDefault >
class  AdditionOp< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< AdditionOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< AdditionOp< T1, T2, c1, c2, E > >
class  SubtractionOp
class  SubtractionOp< T1, T2, false, false, ExprSpecDefault >
class  SubtractionOp< T1, T2, false, true, ExprSpecDefault >
class  SubtractionOp< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< SubtractionOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< SubtractionOp< T1, T2, c1, c2, E > >
class  MultiplicationOp
class  MultiplicationOp< T1, T2, false, false, ExprSpecDefault >
class  MultiplicationOp< T1, T2, false, true, ExprSpecDefault >
class  MultiplicationOp< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< MultiplicationOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< MultiplicationOp< T1, T2, c1, c2, E > >
class  DivisionOp
class  DivisionOp< T1, T2, false, false, ExprSpecDefault >
class  DivisionOp< T1, T2, false, true, ExprSpecDefault >
class  DivisionOp< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< DivisionOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< DivisionOp< T1, T2, c1, c2, E > >
class  Atan2Op
class  Atan2Op< T1, T2, false, false, ExprSpecDefault >
class  Atan2Op< T1, T2, false, true, ExprSpecDefault >
class  Atan2Op< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< Atan2Op< T1, T2, c1, c2, E > >
struct  IsFadExpr< Atan2Op< T1, T2, c1, c2, E > >
class  MaxOp
class  MaxOp< T1, T2, false, false, ExprSpecDefault >
class  MaxOp< T1, T2, false, true, ExprSpecDefault >
class  MaxOp< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< MaxOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< MaxOp< T1, T2, c1, c2, E > >
class  MinOp
class  MinOp< T1, T2, false, false, ExprSpecDefault >
class  MinOp< T1, T2, false, true, ExprSpecDefault >
class  MinOp< T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< MinOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< MinOp< T1, T2, c1, c2, E > >
class  PowerOp
class  PowerOp< T1, T2, false, false, ExprSpecDefault, PowerImpl::Simd >
class  PowerOp< T1, T2, false, true, ExprSpecDefault, PowerImpl::Simd >
class  PowerOp< T1, T2, true, false, ExprSpecDefault, PowerImpl::Simd >
class  PowerOp< T1, T2, false, false, ExprSpecDefault, PowerImpl::Scalar >
class  PowerOp< T1, T2, false, true, ExprSpecDefault, PowerImpl::Scalar >
class  PowerOp< T1, T2, true, false, ExprSpecDefault, PowerImpl::Scalar >
class  PowerOp< T1, T2, false, false, ExprSpecDefault, PowerImpl::Nested >
class  PowerOp< T1, T2, false, true, ExprSpecDefault, PowerImpl::Nested >
class  PowerOp< T1, T2, true, false, ExprSpecDefault, PowerImpl::Nested >
class  PowerOp< T1, T2, false, false, ExprSpecDefault, PowerImpl::NestedSimd >
class  PowerOp< T1, T2, false, true, ExprSpecDefault, PowerImpl::NestedSimd >
class  PowerOp< T1, T2, true, false, ExprSpecDefault, PowerImpl::NestedSimd >
struct  ExprLevel< PowerOp< T1, T2, c1, c2, E > >
struct  IsFadExpr< PowerOp< T1, T2, c1, c2, E > >
class  IfThenElseOp
class  IfThenElseOp< CondT, T1, T2, false, false, ExprSpecDefault >
class  IfThenElseOp< CondT, T1, T2, false, true, ExprSpecDefault >
class  IfThenElseOp< CondT, T1, T2, true, false, ExprSpecDefault >
struct  ExprLevel< IfThenElseOp< CondT, T1, T2, c1, c2, E > >
struct  IsFadExpr< IfThenElseOp< CondT, T1, T2, c1, c2, E > >
class  Multiplicationp
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  ViewFadPtr
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...
class  SimpleFad

Typedefs

template<typename T>
using DFad = GeneralFad< DynamicStorage<T> >
template<typename T>
using DVFad = GeneralFad< VectorDynamicStorage<T> >
template<typename T, int Num>
using SFad = GeneralFad< StaticFixedStorage<T,Num> >
template<typename T, int Num>
using SLFad = GeneralFad< StaticStorage<T,Num> >
template<typename T, unsigned static_length, unsigned static_stride, typename U>
using ViewFad = GeneralFad< ViewStorage<T,static_length,static_stride,U> >

Enumerations

enum  VectorDerivOrientation { Row , Column }

Functions

template<typename T>
UnaryPlusOp< typename Expr< T >::derived_type, typename T::expr_spec_type > operator+ (const Expr< T > &expr)
template<typename T>
UnaryMinusOp< typename Expr< T >::derived_type, typename T::expr_spec_type > operator- (const Expr< T > &expr)
template<typename T>
ExpOp< typename Expr< T >::derived_type, typename T::expr_spec_type > exp (const Expr< T > &expr)
template<typename T>
ExpM1Op< typename Expr< T >::derived_type, typename T::expr_spec_type > expm1 (const Expr< T > &expr)
template<typename T>
LogOp< typename Expr< T >::derived_type, typename T::expr_spec_type > log (const Expr< T > &expr)
template<typename T>
Log1POp< typename Expr< T >::derived_type, typename T::expr_spec_type > log1p (const Expr< T > &expr)
template<typename T>
Log10Op< typename Expr< T >::derived_type, typename T::expr_spec_type > log10 (const Expr< T > &expr)
template<typename T>
SqrtOp< typename Expr< T >::derived_type, typename T::expr_spec_type > sqrt (const Expr< T > &expr)
template<typename T>
CosOp< typename Expr< T >::derived_type, typename T::expr_spec_type > cos (const Expr< T > &expr)
template<typename T>
SinOp< typename Expr< T >::derived_type, typename T::expr_spec_type > sin (const Expr< T > &expr)
template<typename T>
TanOp< typename Expr< T >::derived_type, typename T::expr_spec_type > tan (const Expr< T > &expr)
template<typename T>
ACosOp< typename Expr< T >::derived_type, typename T::expr_spec_type > acos (const Expr< T > &expr)
template<typename T>
ASinOp< typename Expr< T >::derived_type, typename T::expr_spec_type > asin (const Expr< T > &expr)
template<typename T>
ATanOp< typename Expr< T >::derived_type, typename T::expr_spec_type > atan (const Expr< T > &expr)
template<typename T>
CoshOp< typename Expr< T >::derived_type, typename T::expr_spec_type > cosh (const Expr< T > &expr)
template<typename T>
SinhOp< typename Expr< T >::derived_type, typename T::expr_spec_type > sinh (const Expr< T > &expr)
template<typename T>
TanhOp< typename Expr< T >::derived_type, typename T::expr_spec_type > tanh (const Expr< T > &expr)
template<typename T>
ACoshOp< typename Expr< T >::derived_type, typename T::expr_spec_type > acosh (const Expr< T > &expr)
template<typename T>
ASinhOp< typename Expr< T >::derived_type, typename T::expr_spec_type > asinh (const Expr< T > &expr)
template<typename T>
ATanhOp< typename Expr< T >::derived_type, typename T::expr_spec_type > atanh (const Expr< T > &expr)
template<typename T>
AbsOp< typename Expr< T >::derived_type, typename T::expr_spec_type > abs (const Expr< T > &expr)
template<typename T>
FAbsOp< typename Expr< T >::derived_type, typename T::expr_spec_type > fabs (const Expr< T > &expr)
template<typename T>
CbrtOp< typename Expr< T >::derived_type, typename T::expr_spec_type > cbrt (const Expr< T > &expr)
template<typename T>
SafeSqrtOp< typename Expr< T >::derived_type, typename T::expr_spec_type > safe_sqrt (const Expr< T > &expr)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, AdditionOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type operator+ (const T1 &expr1, const T2 &expr2)
template<typename T>
AdditionOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > operator+ (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
AdditionOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > operator+ (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, AdditionOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type operator+ (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, AdditionOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type operator+ (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, SubtractionOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type operator- (const T1 &expr1, const T2 &expr2)
template<typename T>
SubtractionOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > operator- (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
SubtractionOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > operator- (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, SubtractionOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type operator- (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, SubtractionOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type operator- (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, MultiplicationOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type operator* (const T1 &expr1, const T2 &expr2)
template<typename T>
MultiplicationOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > operator* (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
MultiplicationOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > operator* (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, MultiplicationOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type operator* (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, MultiplicationOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type operator* (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, DivisionOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type operator/ (const T1 &expr1, const T2 &expr2)
template<typename T>
DivisionOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > operator/ (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
DivisionOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > operator/ (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, DivisionOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type operator/ (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, DivisionOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type operator/ (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, Atan2Op< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type atan2 (const T1 &expr1, const T2 &expr2)
template<typename T>
Atan2Op< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > atan2 (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
Atan2Op< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > atan2 (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, Atan2Op< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type atan2 (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, Atan2Op< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type atan2 (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, MaxOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type max (const T1 &expr1, const T2 &expr2)
template<typename T>
MaxOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > max (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
MaxOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > max (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, MaxOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type max (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, MaxOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type max (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, MinOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type min (const T1 &expr1, const T2 &expr2)
template<typename T>
MinOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > min (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
MinOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > min (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, MinOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type min (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, MinOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type min (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, PowerOp< typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type pow (const T1 &expr1, const T2 &expr2)
template<typename T>
PowerOp< typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > pow (const typename T::value_type &c, const Expr< T > &expr)
template<typename T>
PowerOp< typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > pow (const Expr< T > &expr, const typename T::value_type &c)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, PowerOp< typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type pow (const typename T::scalar_type &c, const Expr< T > &expr)
template<typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, PowerOp< typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type pow (const Expr< T > &expr, const typename T::scalar_type &c)
template<typename CondT, typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, IfThenElseOp< CondT, typenameExpr< T1 >::derived_type, typenameExpr< T2 >::derived_type, false, false, typenameT1::expr_spec_type > >::type if_then_else (const CondT &cond, const T1 &expr1, const T2 &expr2)
template<typename CondT, typename T>
IfThenElseOp< CondT, typename T::value_type, typename Expr< T >::derived_type, true, false, typename T::expr_spec_type > if_then_else (const CondT &cond, const typename T::value_type &c, const Expr< T > &expr)
template<typename CondT, typename T>
IfThenElseOp< CondT, typename Expr< T >::derived_type, typename T::value_type, false, true, typename T::expr_spec_type > if_then_else (const CondT &cond, const Expr< T > &expr, const typename T::value_type &c)
template<typename CondT, typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, IfThenElseOp< CondT, typenameT::scalar_type, typenameExpr< T >::derived_type, true, false, typenameT::expr_spec_type > >::type if_then_else (const CondT &cond, const typename Expr< T >::scalar_type &c, const Expr< T > &expr)
template<typename CondT, typename T>
mpl::disable_if< std::is_same< typenameT::value_type, typenameT::scalar_type >, IfThenElseOp< CondT, typenameExpr< T >::derived_type, typenameT::scalar_type, false, true, typenameT::expr_spec_type > >::type if_then_else (const CondT &cond, const Expr< T > &expr, const typename Expr< T >::scalar_type &c)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator== (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator== (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator== (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator!= (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator!= (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator!= (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator< (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator< (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator< (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator> (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator> (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator> (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator<= (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator<= (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator<= (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator>= (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator>= (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator>= (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator<<= (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator<<= (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator<<= (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator>>= (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator>>= (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator>>= (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator& (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator& (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator& (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename T1, typename T2>
mpl::enable_if_c< IsFadExpr< T1 >::value &&IsFadExpr< T2 >::value &&ExprLevel< T1 >::value==ExprLevel< T2 >::value, typenameImpl::ConditionalReturnType< typenameT1::value_type, typenameT2::value_type >::type >::type operator| (const T1 &expr1, const T2 &expr2)
template<typename T2>
Impl::ConditionalReturnType< typenameT2::value_type >::type operator| (const typename T2::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
Impl::ConditionalReturnType< typenameT1::value_type >::type operator| (const Expr< T1 > &expr1, const typename T1::value_type &b)
template<typename ExprT>
bool operator! (const Expr< ExprT > &expr)
template<typename T>
bool toBool (const Expr< T > &xx)
template<typename T1, typename T2>
bool operator&& (const Expr< T1 > &expr1, const Expr< T2 > &expr2)
template<typename T2>
bool operator&& (const typename Expr< T2 >::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
bool operator&& (const Expr< T1 > &expr1, const typename Expr< T1 >::value_type &b)
template<typename T1, typename T2>
bool operator|| (const Expr< T1 > &expr1, const Expr< T2 > &expr2)
template<typename T2>
bool operator|| (const typename Expr< T2 >::value_type &a, const Expr< T2 > &expr2)
template<typename T1>
bool operator|| (const Expr< T1 > &expr1, const typename Expr< T1 >::value_type &b)
template<typename T>
std::ostream & operator<< (std::ostream &os, const Expr< T > &xx)
template<typename T>
SimpleFad< T > atan2 (const SimpleFad< T > &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > atan2 (const SimpleFad< T > &, const typename SimpleFad< T >::value_type &)
template<typename T>
SimpleFad< T > atan2 (const typename SimpleFad< T >::value_type &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > pow (const SimpleFad< T > &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > pow (const SimpleFad< T > &, const typename SimpleFad< T >::value_type &)
template<typename T>
SimpleFad< T > pow (const typename SimpleFad< T >::value_type &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > max (const SimpleFad< T > &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > max (const SimpleFad< T > &, const typename SimpleFad< T >::value_type &)
template<typename T>
SimpleFad< T > max (const typename SimpleFad< T >::value_type &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > min (const SimpleFad< T > &, const SimpleFad< T > &)
template<typename T>
SimpleFad< T > min (const SimpleFad< T > &, const typename SimpleFad< T >::value_type &)
template<typename T>
SimpleFad< T > min (const typename SimpleFad< T >::value_type &, const SimpleFad< T > &)

Detailed Description

Namespace for forward-mode AD classes.

Enumeration Type Documentation

◆ VectorDerivOrientation

Enumerator
Column 

Derivatives are stored row-wise (strided).

Derivatives ar stored column-wise (unit stride)