|
glucat 0.12.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 |
Smart isinf.
Definition at line 83 of file scalar.h.
References glucat::numeric_traits< Scalar_T >::isInf().
|
inlinestaticprivate |
Smart isinf specialised for Scalar_T without infinity.
Definition at line 54 of file scalar.h.
Referenced by glucat::numeric_traits< Scalar_T >::isInf(), and glucat::numeric_traits< Scalar_T >::isNaN_or_isInf().
|
inlinestaticprivate |
Smart isinf specialised for Scalar_T with infinity.
Definition at line 61 of file scalar.h.
References _GLUCAT_ISINF.
|
inlinestatic |
Smart isnan.
Definition at line 93 of file scalar.h.
References glucat::numeric_traits< Scalar_T >::isNaN().
|
inlinestaticprivate |
Smart isnan specialised for Scalar_T without quiet NaN.
Definition at line 68 of file scalar.h.
Referenced by glucat::numeric_traits< Scalar_T >::isNaN(), and glucat::numeric_traits< Scalar_T >::isNaN_or_isInf().
|
inlinestaticprivate |
Smart isnan specialised for Scalar_T with quiet NaN.
Definition at line 75 of file scalar.h.
References _GLUCAT_ISNAN.
|
inlinestatic |
Smart isnan or isinf.
Definition at line 103 of file scalar.h.
References glucat::numeric_traits< Scalar_T >::isInf(), and glucat::numeric_traits< Scalar_T >::isNaN().
|
inline |
|
inlinestatic |
log(2)
Definition at line 196 of file scalar.h.
Referenced by glucat::numeric_traits< Scalar_T >::log2().
|
inlinestatic |
Logarithm of scalar.
Definition at line 224 of file scalar.h.
Referenced by glucat::numeric_traits< Scalar_T >::log2().
|
inlinestatic |
Log base 2.
Definition at line 231 of file scalar.h.
References glucat::numeric_traits< Scalar_T >::ln_2(), and glucat::numeric_traits< Scalar_T >::log().
Referenced by glucat::log2().
|
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::operator<<(), glucat::numeric_traits< Scalar_T >::to_scalar_t(), and glucat::numeric_traits< Scalar_T >::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 |
Cast to double.
Definition at line 61 of file scalar_imp.h.
References glucat::numeric_traits< Scalar_T >::to_double().
|
inline |
Extra traits which extend numeric limits.
Cast to float
Definition at line 52 of file scalar_imp.h.
References glucat::numeric_traits< Scalar_T >::to_double().
|
inlinestatic |
Cast to Scalar_T.
Definition at line 141 of file scalar.h.
Referenced by 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.