21#ifndef _gcem_floor_HPP
22#define _gcem_floor_HPP
33 return( (x < T(0)) && (x < x_whole) );
42 return( x_whole -
static_cast<T
>(
floor_resid(x,x_whole)) );
60 return(
abs(x) >= 8388608.f ? \
64 floor_int(x,
float(
static_cast<int>(x))) );
73 return(
abs(x) >= 4503599627370496. ? \
86 return(
abs(x) >= 9223372036854775808.l ? \
101 GCLIM<T>::quiet_NaN() :
constexpr return_t< T > floor(const T x) noexcept
Compile-time floor function.
Definition: floor.hpp:124
UnitType abs(const UnitType x) noexcept
Compute absolute value.
Definition: math.h:721
constexpr common_t< T1, T2 > min(const T1 x, const T2 y) noexcept
Compile-time pairwise minimum function.
Definition: min.hpp:35
unsigned long long int ullint_t
Definition: gcem_options.hpp:69
long long int llint_t
Definition: gcem_options.hpp:71
Definition: Eigen_Colamd.h:50
constexpr double floor_check_internal< double >(const double x) noexcept
Definition: floor.hpp:70
constexpr T floor_check_internal(const T x) noexcept
Definition: floor.hpp:48
constexpr bool is_nan(const T x) noexcept
Definition: is_nan.hpp:36
constexpr float floor_check_internal< float >(const float x) noexcept
Definition: floor.hpp:57
constexpr int floor_resid(const T x, const T x_whole) noexcept
Definition: floor.hpp:30
constexpr bool is_finite(const T x) noexcept
Definition: is_finite.hpp:34
constexpr long double floor_check_internal< long double >(const long double x) noexcept
Definition: floor.hpp:83
constexpr T floor_int(const T x, const T x_whole) noexcept
Definition: floor.hpp:39
constexpr T floor_check(const T x) noexcept
Definition: floor.hpp:96
constexpr int sgn(const T x) noexcept
Compile-time sign function.
Definition: sgn.hpp:34