10 #ifndef EIGEN_NUMTRAITS_H
11 #define EIGEN_NUMTRAITS_H
22 template <typename T, bool use_numeric_limits = std::numeric_limits<T>::is_specialized,
47 template <typename T, bool use_numeric_limits = std::numeric_limits<T>::is_specialized,
72 template <typename T, bool use_numeric_limits = std::numeric_limits<T>::is_specialized,
101 template <
typename Tgt,
typename Src>
106 THIS_TYPE_IS_NOT_SUPPORTED)
111 const Src staged = src;
113 memcpy(
static_cast<void*
>(&tgt),
static_cast<const void*
>(&staged),
sizeof(Tgt));
171 template <
typename T>
184 typedef std::conditional_t<
IsInteger, std::conditional_t<
sizeof(
T) <= 2,
float,
double>,
T> NonInteger;
216 template <
typename T>
230 #ifndef EIGEN_GPU_COMPILE_PHASE
234 return static_cast<long double>(1e-15l);
237 #if defined(EIGEN_ARCH_PPC) && (__LDBL_MANT_DIG__ == 106)
241 return static_cast<long double>(2.4651903288156618919116517665087e-32l);
247 template <
typename Real_>
266 template <
typename Scalar,
int Rows,
int Cols,
int Options,
int MaxRows,
int MaxCols>
Array< double, 1, 3 > e(1./3., 0.5, 2.)
Eigen::Triplet< double > T
Definition: EigenUnitTest.cpp:11
#define EIGEN_USING_STD(FUNC)
Definition: Macros.h:1090
#define EIGEN_CONSTEXPR
Definition: Macros.h:758
#define EIGEN_DEVICE_FUNC
Definition: Macros.h:892
#define EIGEN_STRONG_INLINE
Definition: Macros.h:834
#define EIGEN_STATIC_ASSERT(X, MSG)
Definition: StaticAssert.h:26
bool is_integer(const Exponent &exp)
Definition: array_cwise.cpp:248
SCALAR Scalar
Definition: bench_gemm.cpp:45
boost::multiprecision::number< boost::multiprecision::cpp_dec_float< 100 >, boost::multiprecision::et_on > Real
Definition: boostmultiprec.cpp:77
General-purpose arrays with easy API for coefficient-wise operations.
Definition: Array.h:48
#define max(a, b)
Definition: datatypes.h:23
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 floor(const bfloat16 &a)
Definition: BFloat16.h:643
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 ceil(const bfloat16 &a)
Definition: BFloat16.h:644
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 log10(const bfloat16 &a)
Definition: BFloat16.h:620
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Tgt bit_cast(const Src &src)
Definition: NumTraits.h:102
Namespace containing all symbols from the Eigen library.
Definition: bench_norm.cpp:70
squared absolute value
Definition: GlobalFunctions.h:87
const int HugeCost
Definition: Constants.h:48
const int Dynamic
Definition: Constants.h:25
Definition: Eigen_Colamd.h:49
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286
double epsilon
Definition: osc_ring_sarah_asymptotics.h:43
Scalar log2(Scalar x)
Definition: packetmath.cpp:754
Definition: NumTraits.h:172
@ RequireInitialization
Definition: NumTraits.h:177
@ IsSigned
Definition: NumTraits.h:175
@ ReadCost
Definition: NumTraits.h:178
@ AddCost
Definition: NumTraits.h:179
@ IsInteger
Definition: NumTraits.h:174
@ IsComplex
Definition: NumTraits.h:176
@ MulCost
Definition: NumTraits.h:180
T Real
Definition: NumTraits.h:183
NumTraits< Scalar >::Real RealScalar
Definition: NumTraits.h:269
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR RealScalar epsilon()
Definition: NumTraits.h:290
NumTraits< Scalar >::Literal Literal
Definition: NumTraits.h:274
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR RealScalar dummy_precision()
Definition: NumTraits.h:291
ArrayType & Nested
Definition: NumTraits.h:273
NumTraits< Scalar >::NonInteger NonIntegerScalar
Definition: NumTraits.h:271
Array< RealScalar, Rows, Cols, Options, MaxRows, MaxCols > Real
Definition: NumTraits.h:270
static EIGEN_CONSTEXPR int max_digits10()
Definition: NumTraits.h:298
Array< Scalar, Rows, Cols, Options, MaxRows, MaxCols > ArrayType
Definition: NumTraits.h:268
static EIGEN_CONSTEXPR int digits10()
Definition: NumTraits.h:296
Array< NonIntegerScalar, Rows, Cols, Options, MaxRows, MaxCols > NonInteger
Definition: NumTraits.h:272
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR double dummy_precision()
Definition: NumTraits.h:226
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR float dummy_precision()
Definition: NumTraits.h:221
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR long double dummy_precision()
Definition: NumTraits.h:233
Real_ Real
Definition: NumTraits.h:249
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR Real epsilon()
Definition: NumTraits.h:260
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int digits10()
Definition: NumTraits.h:262
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR Real dummy_precision()
Definition: NumTraits.h:261
NumTraits< Real_ >::Literal Literal
Definition: NumTraits.h:250
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int max_digits10()
Definition: NumTraits.h:263
static std::string infinity()
static EIGEN_CONSTEXPR int max_digits10()
Definition: NumTraits.h:308
static std::string quiet_NaN()
static EIGEN_CONSTEXPR int digits10()
Definition: NumTraits.h:306
static std::string dummy_precision()
static std::string epsilon()
static std::string highest()
static std::string lowest()
Holds information about the various numeric (i.e. scalar) types allowed by Eigen.
Definition: NumTraits.h:217
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:56
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:67
Definition: NumTraits.h:49
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:50
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:31
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:42
Definition: NumTraits.h:24
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:25
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:81
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:92
Definition: NumTraits.h:74
EIGEN_DEVICE_FUNC static EIGEN_CONSTEXPR int run()
Definition: NumTraits.h:75
Definition: datatypes.h:12