49 return( T(1)/( T((order-1)*4 - 1) * x_pow ) \
50 - T(1)/( T((order-1)*4 + 1) * x_pow * xx) );
53#if __cplusplus >= 201402L
70 uint_t depth = max_order - 1;
72 while (depth > order_begin) {
91 return( max_order == 1 ? \
124#if __cplusplus >= 201402L
132 uint_t depth = max_depth - 1;
133 T res = T(2*(depth+1) - 1);
135 while (depth > depth_begin - 1) {
136 res = T(2*depth - 1) + T(depth*depth) * xx / res;
152 return( depth < max_depth ? \
154 T(2*depth - 1) + T(depth*depth) * xx /
atan_cf_recur(xx,depth+1,max_depth) :
220 if (std::is_constant_evaluated()) {
#define GCEM_HALF_PI
Definition gcem_options.hpp:118
constexpr T atan_check(const T x) noexcept
Definition atan.hpp:190
constexpr T atan_cf_main(const T x) noexcept
Definition atan.hpp:164
constexpr T atan_cf_recur(const T xx, const uint_t depth, const uint_t max_depth) noexcept
Definition atan.hpp:149
constexpr bool is_nan(const T x) noexcept
Definition is_nan.hpp:39
constexpr T atan_series_main(const T x) noexcept
Definition atan.hpp:108
constexpr T atan_series_order_calc(const T xx, const T x_pow, const uint_t order) noexcept
Definition atan.hpp:46
constexpr T atan_begin(const T x) noexcept
Definition atan.hpp:179
constexpr T atan_series_order(const T x, const T x_pow, const uint_t order, const uint_t max_order) noexcept
Definition atan.hpp:88
unsigned int uint_t
Definition gcem_options.hpp:68
constexpr T abs(const T x) noexcept
Compile-time absolute value function.
Definition abs.hpp:40
constexpr return_t< T > atan(const T x) noexcept
Compile-time arctangent function.
Definition atan.hpp:217
std::numeric_limits< T > GCLIM
Definition gcem_options.hpp:74
typename std::conditional< std::is_integral< T >::value, double, T >::type return_t
Definition gcem_options.hpp:77
constexpr common_t< T1, T2 > pow(const T1 base, const T2 exp_term) noexcept
Compile-time power function.
Definition pow.hpp:82