10 #ifndef SACADO_TAYLOR_DTAYLORTRAITS_HPP
11 #define SACADO_TAYLOR_DTAYLORTRAITS_HPP
18 template <
typename T>
class CacheTaylor;
19 template <
typename T>
class Expr;
52 static const bool value =
false;
57 struct Value< Tay::CacheTaylor<T> > {
75 static std::string
eval() {
76 return std::string(
"Sacado::Tay::CacheTaylor< ") +
92 static const bool value =
false;
102 #ifdef HAVE_SACADO_TEUCHOSNUMERICS
105 template <
typename ValueT>
106 struct PromotionTraits< Sacado::Tay::CacheTaylor<ValueT>,
114 template <
typename ValueT,
typename R>
115 struct PromotionTraits< Sacado::Tay::CacheTaylor<ValueT>,
R > {
121 template <
typename L,
typename ValueT>
122 struct PromotionTraits< L, Sacado::Tay::CacheTaylor<ValueT> > {
131 #ifdef HAVE_SACADO_TEUCHOSCORE
134 template <
typename ValueT>
135 struct ScalarTraits< Sacado::Tay::CacheTaylor<ValueT> > :
136 public Sacado::Tay::ScalarTraitsImp< Sacado::Tay::CacheTaylor<ValueT> >
142 #ifdef HAVE_SACADO_TEUCHOSCOMM
145 template <
typename Ordinal,
typename ValueT>
146 struct SerializationTraits<
Ordinal, Sacado::Tay::CacheTaylor<ValueT> > :
147 public Sacado::Tay::SerializationTraitsImp< Ordinal,
148 Sacado::Tay::CacheTaylor<ValueT> >
151 template <
typename Ordinal,
typename ValueT>
152 struct ValueTypeSerializer<
Ordinal, Sacado::Tay::CacheTaylor<ValueT> > :
153 public Sacado::Tay::SerializerImp< Ordinal,
154 Sacado::Tay::CacheTaylor<ValueT>,
155 ValueTypeSerializer<Ordinal,ValueT> >
158 typedef ValueTypeSerializer<Ordinal,ValueT> ValueSerializer;
159 typedef Sacado::Tay::SerializerImp< Ordinal,TayType,ValueSerializer> Base;
167 #endif // SACADO_TAYLOR_DTAYLORTRAITS_HPP
static SACADO_INLINE_FUNCTION const T & eval(const T &x)
static std::string eval()
Base template specification for ScalarValue.
Base template specification for ScalarType.
const T & val() const
Returns value.
Forward-mode AD class using dynamic memory allocation.
ScalarType< T >::type type
Base template specification for string names of types.
bool isEqualTo(const Expr< S > &x) const
Returns whether two Taylor objects have the same values.
ValueType< Tay::CacheTaylor< T > >::type value_type
Base template specification for IsADType.
Base template specification for Value.
#define SACADO_AD_PROMOTE_SPEC(NS, AD)
ScalarType< Tay::CacheTaylor< T > >::type scalar_type
#define SACADO_EXPR_PROMOTE_SPEC(NS)
ValueType< Tay::CacheTaylor< T > >::type value_type
Base template specification for testing equivalence.
static bool eval(const Tay::CacheTaylor< T > &x, const Tay::CacheTaylor< T > &y)
static const value_type & eval(const Tay::CacheTaylor< T > &x)
Base template specification for IsScalarType.
Base template specification for ValueType.
static const scalar_type & eval(const Tay::CacheTaylor< T > &x)
static std::string eval()
Base template specification for testing whether type is statically sized.