27 #ifndef CDPL_MATH_TYPETRAITS_HPP
28 #define CDPL_MATH_TYPETRAITS_HPP
34 #include <type_traits>
43 template <
bool Signed>
115 template <
typename T>
118 template <
typename T>
169 template <
typename T>
173 template <
typename T>
177 template <
typename V>
181 typedef typename V::VectorTemporaryType
Type;
184 template <
typename M>
188 typedef typename M::MatrixTemporaryType
Type;
191 template <
typename Q>
195 typedef typename Q::QuaternionTemporaryType
Type;
198 template <
typename G>
202 typedef typename G::GridTemporaryType
Type;
205 template <
typename T>
209 template <
typename T>
210 struct IsScalar<std::complex<T> > :
public std::is_arithmetic<T>
constexpr unsigned int T
Specifies Hydrogen (Tritium).
Definition: AtomType.hpp:67
GridUnaryTraits< E, ScalarConjugation< typename E::ValueType > >::ResultType conj(const GridExpression< E > &e)
Definition: GridExpression.hpp:360
GridUnaryTraits< E, ScalarReal< typename E::ValueType > >::ResultType real(const GridExpression< E > &e)
Definition: GridExpression.hpp:378
GridUnaryTraits< E, ScalarImaginary< typename E::ValueType > >::ResultType imag(const GridExpression< E > &e)
Definition: GridExpression.hpp:387
The namespace of the Chemical Data Processing Library.
Definition: TypeTraits.hpp:200
G::GridTemporaryType Type
Definition: TypeTraits.hpp:202
Definition: TypeTraits.hpp:207
Definition: TypeTraits.hpp:186
M::MatrixTemporaryType Type
Definition: TypeTraits.hpp:188
Definition: TypeTraits.hpp:193
Q::QuaternionTemporaryType Type
Definition: TypeTraits.hpp:195
static const T & abs(const T &t)
Definition: TypeTraits.hpp:59
Definition: TypeTraits.hpp:45
static T abs(const T &t)
Definition: TypeTraits.hpp:48
Definition: TypeTraits.hpp:67
ScalarTraits< T > SelfType
Definition: TypeTraits.hpp:72
static RealType real(ConstReference t)
Definition: TypeTraits.hpp:74
static RealType conj(ConstReference t)
Definition: TypeTraits.hpp:84
static RealType norm1(ConstReference t)
Definition: TypeTraits.hpp:99
static RealType normInf(ConstReference t)
Definition: TypeTraits.hpp:109
static RealType abs(ConstReference t)
Definition: TypeTraits.hpp:89
T ValueType
Definition: TypeTraits.hpp:69
static RealType imag(ConstReference)
Definition: TypeTraits.hpp:79
static ValueType sqrt(ConstReference t)
Definition: TypeTraits.hpp:94
static RealType norm2(ConstReference t)
Definition: TypeTraits.hpp:104
const T & ConstReference
Definition: TypeTraits.hpp:71
T RealType
Definition: TypeTraits.hpp:70
Definition: TypeTraits.hpp:171
Definition: TypeTraits.hpp:179
V::VectorTemporaryType Type
Definition: TypeTraits.hpp:181