35 template <
typename T,
int Num>
51 template <
typename ValueT,
int Num>
53 public Expr< GeneralFad<ValueT,Fad::StaticStorage<ValueT,Num> > > {
114 SLFad(
const int sz,
const int i,
const ValueT & x) :
123 template <
typename S>
135 template <
typename S>
138 GeneralFadType::operator=(v);
145 GeneralFadType::operator=(static_cast<const GeneralFadType&>(x));
150 template <
typename S>
154 GeneralFadType::operator=(x);
159 template <
typename S>
162 GeneralFadType::operator+=(x);
167 template <
typename S>
170 GeneralFadType::operator-=(x);
175 template <
typename S>
178 GeneralFadType::operator*=(x);
183 template <
typename S>
186 GeneralFadType::operator/=(x);
193 GeneralFadType::operator+=(static_cast<const GeneralFadType&>(x));
200 GeneralFadType::operator-=(static_cast<const GeneralFadType&>(x));
207 GeneralFadType::operator*=(static_cast<const GeneralFadType&>(x));
214 GeneralFadType::operator/=(static_cast<const GeneralFadType&>(x));
219 template <
typename S>
222 GeneralFadType::operator+=(x);
228 template <
typename S>
231 GeneralFadType::operator-=(x);
236 template <
typename S>
239 GeneralFadType::operator*=(x);
244 template <
typename S>
247 GeneralFadType::operator/=(x);
253 template <
typename T,
int N>
258 template <
typename T,
int N>
260 static const unsigned value =
261 ExprLevel< typename SLFad<T,N>::value_type >::value + 1;
264 template <
typename T,
int N>
266 static const bool value =
true;
271 template <
typename T,
int N>
276 template <
typename T,
int N>
281 template <
typename T,
int N>
286 template <
typename T,
unsigned,
unsigned>
struct ViewFadType;
288 template <
typename,
unsigned,
unsigned,
typename>
class ViewFad;
292 template<
class ValueType,
int N,
unsigned length,
unsigned str
ide >
301 template<
class ValueType,
int N,
unsigned length,
unsigned str
ide >
Turn SLFad into a meta-function class usable with mpl::apply.
KOKKOS_INLINE_FUNCTION SLFad(const int sz, const ValueT &x, const DerivInit zero_out=InitDerivArray)
Constructor with size sz and value x.
Derivative array storage class using static memory allocation.
#define SACADO_ENABLE_VALUE_CTOR_DECL
Base template specification for whether a type is a Fad type.
KOKKOS_INLINE_FUNCTION SLFad(const Expr< S > &x, SACADO_ENABLE_EXPR_CTOR_DECL)
Copy constructor from any Expression object.
KOKKOS_INLINE_FUNCTION SLFad(const int sz, const int i, const ValueT &x)
Constructor with size sz, index i, and value x.
Forward-mode AD class using dynamic memory allocation and expression templates.
KOKKOS_INLINE_FUNCTION SLFad(const SLFad &x)
Copy constructor.
#define SACADO_ENABLE_EXPR_CTOR_DECL
KOKKOS_INLINE_FUNCTION SLFad()
Default constructor.
KOKKOS_INLINE_FUNCTION ~SLFad()
Destructor.
Sacado::FAD_NS::ViewFad< const ValueType, length, stride, Sacado::FAD_NS::SLFad< ValueType, N > > type
#define KOKKOS_INLINE_FUNCTION
ExprType::value_type value_type
Typename of values.
#define SACADO_ENABLE_VALUE_FUNC(RETURN_TYPE)
FAD_NS::SLFad< T, N >::base_expr_type type
Fad::StaticStorage< ValueT, Num > StorageType
Base classes.
Get the base Fad type from a view/expression.
ExprType::scalar_type scalar_type
Typename of scalar's (which may be different from value_type)
#define SACADO_ENABLE_EXPR_FUNC(RETURN_TYPE)
Expr< GeneralFadType > ExprType
Sacado::FAD_NS::ViewFad< ValueType, length, stride, Sacado::FAD_NS::SLFad< ValueType, N > > type
DerivInit
Enum use to signal whether the derivative array should be initialized in AD object constructors...
ScalarType< ValueT >::type ScalarT
Typename of scalar's (which may be different from ValueT)
GeneralFad< ValueT, StorageType > GeneralFadType
Forward-mode AD class using static memory allocation with long arrays and expression templates...
Initialize the derivative array.
KOKKOS_INLINE_FUNCTION SLFad(const S &x, SACADO_ENABLE_VALUE_CTOR_DECL)
Constructor with supplied value x convertible to ValueT.
SLFad< typename GeneralFad< T, Fad::StaticStorage< T, N > >::value_type, N > type
Get view type for any Fad type.