glucat 0.13.0
|
Extra traits which extend numeric limits. More...
#include <scalar.h>
Classes | |
struct | demoted |
Demoted type for long double. More... | |
struct | promoted |
Extra traits which extend numeric limits. More... |
Public Member Functions | |
auto | pi () -> long double |
Pi for long double. | |
auto | ln_2 () -> long double |
log(2) for long double | |
auto | to_scalar_t (const Other_Scalar_T &val) -> float |
Extra traits which extend numeric limits. | |
auto | to_scalar_t (const Other_Scalar_T &val) -> double |
Cast to double. | |
auto | to_scalar_t (const dd_real &val) -> long double |
Cast to long double. | |
auto | to_scalar_t (const qd_real &val) -> long double |
Cast to long double. | |
auto | to_scalar_t (const long double &val) -> dd_real |
Cast to dd_real. | |
auto | to_scalar_t (const qd_real &val) -> dd_real |
Cast to dd_real. | |
auto | to_scalar_t (const long double &val) -> qd_real |
Cast to qd_real. | |
auto | to_scalar_t (const dd_real &val) -> qd_real |
Cast to qd_real. |
Static Public Member Functions | |
static auto | isInf (const Scalar_T &val) -> bool |
Smart isinf. | |
static auto | isNaN (const Scalar_T &val) -> bool |
Smart isnan. | |
static auto | isNaN_or_isInf (const Scalar_T &val) -> bool |
Smart isnan or isinf. | |
static auto | NaN () -> Scalar_T |
Smart NaN. | |
static auto | to_int (const Scalar_T &val) -> int |
Cast to int. | |
static auto | to_double (const Scalar_T &val) -> double |
Cast to double. | |
template<typename Other_Scalar_T> | |
static auto | to_scalar_t (const Other_Scalar_T &val) -> Scalar_T |
Cast to Scalar_T. | |
static auto | fmod (const Scalar_T &lhs, const Scalar_T &rhs) -> Scalar_T |
Modulo function for scalar. | |
static auto | conj (const Scalar_T &val) -> Scalar_T |
Complex conjugate of scalar. | |
static auto | real (const Scalar_T &val) -> Scalar_T |
Real part of scalar. | |
static auto | imag (const Scalar_T &val) -> Scalar_T |
Imaginary part of scalar. | |
static auto | abs (const Scalar_T &val) -> Scalar_T |
Absolute value of scalar. | |
static auto | pi () -> Scalar_T |
Pi. | |
static auto | ln_2 () -> Scalar_T |
log(2) | |
static auto | pow (const Scalar_T &val, int n) -> Scalar_T |
Integer power. | |
static auto | sqrt (const Scalar_T &val) -> Scalar_T |
Square root of scalar. | |
static auto | exp (const Scalar_T &val) -> Scalar_T |
Exponential. | |
static auto | log (const Scalar_T &val) -> Scalar_T |
Logarithm of scalar. | |
static auto | log2 (const Scalar_T &val) -> Scalar_T |
Log base 2. | |
static auto | cos (const Scalar_T &val) -> Scalar_T |
Cosine of scalar. | |
static auto | acos (const Scalar_T &val) -> Scalar_T |
Inverse cosine of scalar. | |
static auto | cosh (const Scalar_T &val) -> Scalar_T |
Hyperbolic cosine of scalar. | |
static auto | sin (const Scalar_T &val) -> Scalar_T |
Sine of scalar. | |
static auto | asin (const Scalar_T &val) -> Scalar_T |
Inverse sine of scalar. | |
static auto | sinh (const Scalar_T &val) -> Scalar_T |
Hyperbolic sine of scalar. | |
static auto | tan (const Scalar_T &val) -> Scalar_T |
Tangent of scalar. | |
static auto | atan (const Scalar_T &val) -> Scalar_T |
Inverse tangent of scalar. | |
static auto | tanh (const Scalar_T &val) -> Scalar_T |
Hyperbolic tangent of scalar. |
Static Private Member Functions | |
static auto | isInf (const Scalar_T &val, bool_to_type< false >) -> bool |
Smart isinf specialised for Scalar_T without infinity. | |
static auto | isInf (const Scalar_T &val, bool_to_type< true >) -> bool |
Smart isinf specialised for Scalar_T with infinity. | |
static auto | isNaN (const Scalar_T &val, bool_to_type< false >) -> bool |
Smart isnan specialised for Scalar_T without quiet NaN. | |
static auto | isNaN (const Scalar_T &val, bool_to_type< true >) -> bool |
Smart isnan specialised for Scalar_T with quiet NaN. |
Extra traits which extend numeric limits.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestaticprivate |
Smart isinf specialised for Scalar_T without infinity.
Definition at line 54 of file scalar.h.
Referenced by isInf(), glucat::matrix::isinf(), and isNaN_or_isInf().
|
inlinestaticprivate |
Smart isinf specialised for Scalar_T with infinity.
Definition at line 61 of file scalar.h.
References _GLUCAT_ISINF.
|
inlinestatic |
|
inlinestaticprivate |
Smart isnan specialised for Scalar_T without quiet NaN.
Definition at line 68 of file scalar.h.
Referenced by isNaN(), glucat::matrix::isnan(), isNaN_or_isInf(), glucat::matrix::norm_frob2(), and glucat::matrix::trace().
|
inlinestaticprivate |
Smart isnan specialised for Scalar_T with quiet NaN.
Definition at line 75 of file scalar.h.
References _GLUCAT_ISNAN.
|
inlinestatic |
|
inline |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Smart NaN.
Definition at line 115 of file scalar.h.
Referenced by glucat::cr_sqrt(), glucat::db_sqrt(), glucat::matrix::norm_frob2(), glucat::operator*(), and glucat::matrix::trace().
|
inline |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Cast to double.
Definition at line 133 of file scalar.h.
Referenced by glucat::matrix::classify_eigenvalues(), glucat::operator<<(), PyFloat_FromDouble(), to_scalar_t(), and to_scalar_t().
|
inlinestatic |
|
inline |
Cast to long double.
Definition at line 71 of file scalar_imp.h.
|
inline |
Cast to qd_real.
Definition at line 116 of file scalar_imp.h.
|
inline |
Cast to dd_real.
Definition at line 89 of file scalar_imp.h.
|
inline |
Cast to qd_real.
Definition at line 107 of file scalar_imp.h.
|
inline |
|
inline |
Extra traits which extend numeric limits.
Cast to float
Definition at line 52 of file scalar_imp.h.
References to_double().
|
inlinestatic |
Cast to Scalar_T.
Definition at line 141 of file scalar.h.
Referenced by glucat::framed_multi< Scalar_T, LO, HI, Tune_P >::framed_multi(), glucat::framed_multi< Scalar_T, LO, HI, Tune_P >::framed_multi(), glucat::matrix_multi< Scalar_T, LO, HI, Tune_P >::matrix_multi(), glucat::matrix_multi< Scalar_T, LO, HI, Tune_P >::matrix_multi(), glucat::matrix_multi< Scalar_T, LO, HI, Tune_P >::matrix_multi(), glucat::matrix::nork_range(), glucat::to_demote(), and glucat::to_promote().
|
inline |
Cast to dd_real.
Definition at line 98 of file scalar_imp.h.
|
inline |
Cast to long double.
Definition at line 80 of file scalar_imp.h.