Go to the source code of this file.
template<int DEGREE>
constexpr float approx_logf |
( |
float |
x | ) |
|
Definition at line 127 of file approx_log.h.
References infinity.
128 using namespace approx_math;
130 constexpr
float MAXNUMF = 3.4028234663852885981170418348451692544e38f;
133 float res = unsafe_logf<DEGREE>(
x);
135 return (x > 0) ? res : std::numeric_limits<float>::quiet_NaN();
uint16_t const *__restrict__ x
template<int DEGREE>
constexpr float approx_logf_P |
( |
float |
p | ) |
|
Definition at line 57 of file approx_log.h.
References detailsBasic3DVector::y.
58 return y * (float(0xf.ff652p-4) +
59 y * (-float(0x8.0048ap-4) +
60 y * (float(0x5.72782p-4) +
y * (-float(0x4.20904p-4) +
y * float(0x2.1d7fd8p-4)))));
Definition at line 65 of file approx_log.h.
References detailsBasic3DVector::y.
66 return y * (float(0xf.fff14p-4) +
67 y * (-float(0x7.ff4bfp-4) +
68 y * (float(0x5.582f6p-4) +
69 y * (-float(0x4.1dcf2p-4) +
y * (float(0x3.3863f8p-4) +
y * (-float(0x1.9288d4p-4)))))));
Definition at line 74 of file approx_log.h.
References detailsBasic3DVector::y.
75 return y * (float(0x1.000034p0) +
76 y * (-float(0x7.ffe57p-4) +
77 y * (float(0x5.5422ep-4) +
78 y * (-float(0x4.037a6p-4) +
79 y * (float(0x3.541c88p-4) +
y * (-float(0x2.af842p-4) +
y * float(0x1.48b3d8p-4)))))));
Definition at line 84 of file approx_log.h.
References detailsBasic3DVector::y.
86 (float(0x1.00000cp0) +
87 y * (float(-0x8.0003p-4) +
88 y * (float(0x5.55087p-4) +
89 y * (float(-0x3.fedcep-4) +
90 y * (float(0x3.3a1dap-4) +
91 y * (float(-0x2.cb55fp-4) +
y * (float(0x2.38831p-4) +
y * (float(-0xf.e87cap-8)))))))));
template<int DEGREE>
constexpr float unsafe_logf |
( |
float |
x | ) |
|
template<int DEGREE>
constexpr float unsafe_logf_impl |
( |
float |
x | ) |
|