|
Tuesday
|
Global math functions for basic scalar types.
The allowable types are restricted to those which can be used as SIMD components.
Functions | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::sin (T x) noexcept |
Computes the sine of x (measured in radians). More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::cos (T x) noexcept |
Computes the cosine of x (measured in radians). More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value > | tue::math::sincos (T x, T &sin_out, T &cos_out) noexcept |
Computes the sine and cosine of x (measured in radians). More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::exp (T x) noexcept |
Computes the base-e exponential of x. More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::log (T x) noexcept |
Computes the base-e (natural) logarithm of x. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, T > | tue::math::abs (T x) noexcept |
Computes the absolute value of x. More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::pow (T x, T y) noexcept |
Computes x raised to the power y. More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::recip (T x) noexcept |
Computes the reciprocal of x. More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::sqrt (T x) noexcept |
Computes the nonnegative square root of x. More... | |
| template<typename T > | |
| std::enable_if_t< is_floating_point_simd_component< T >::value, T > | tue::math::rsqrt (T x) noexcept |
Computes the reciprocal of the nonnegative square root of x. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, T > | tue::math::min (T x, T y) noexcept |
| Determines the minimum numeric value of the arguments. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, T > | tue::math::max (T x, T y) noexcept |
| Determines the maximum numeric value of the arguments. More... | |
| template<typename T , typename U > | |
| std::enable_if_t< is_sized_bool< T >::value &&is_simd_component< U >::value &&sizeof(T)==sizeof(U), U > | tue::math::mask (T condition, U value) noexcept |
Computes the bitwise AND of condition and value. More... | |
| template<typename T , typename U > | |
| std::enable_if_t< is_sized_bool< T >::value &&is_simd_component< U >::value &&sizeof(T)==sizeof(U), U > | tue::math::select (T condition, U value, U otherwise) noexcept |
Selects a return value based on condition. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, sized_bool_t< sizeof(T)> > | tue::math::less (T lhs, T rhs) noexcept |
Computes whether or not lhs is less than rhs. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, sized_bool_t< sizeof(T)> > | tue::math::less_equal (T lhs, T rhs) noexcept |
Computes whether or not lhs is less than or equal to rhs. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, sized_bool_t< sizeof(T)> > | tue::math::greater (T lhs, T rhs) noexcept |
Computes whether or not lhs is greater than rhs. More... | |
| template<typename T > | |
| std::enable_if_t< is_arithmetic_simd_component< T >::value, sized_bool_t< sizeof(T)> > | tue::math::greater_equal (T lhs, T rhs) noexcept |
Computes whether or not lhs is greater than or equal to rhs. More... | |
| template<typename T > | |
| std::enable_if_t< is_simd_component< T >::value, sized_bool_t< sizeof(T)> > | tue::math::equal (T lhs, T rhs) noexcept |
Computes whether or not lhs is equal to rhs. More... | |
| template<typename T > | |
| std::enable_if_t< is_simd_component< T >::value, sized_bool_t< sizeof(T)> > | tue::math::not_equal (T lhs, T rhs) noexcept |
Computes whether or not lhs is not equal to rhs. More... | |
|
inlinenoexcept |
Computes the sine of x (measured in radians).
| T | The type of parameter x. |
| x | A floating-point number. |
x (measured in radians).
|
inlinenoexcept |
Computes the cosine of x (measured in radians).
| T | The type of parameter x. |
| x | A floating-point number. |
x (measured in radians).
|
inlinenoexcept |
Computes the sine and cosine of x (measured in radians).
| T | The type of parameter x. |
| x | A floating-point number. |
| sin_out | A reference to the value where the sine of x (measured in radians) will be stored. |
| cos_out | A reference to the value where the cosine of x (measured in radians) will be stored. |
|
inlinenoexcept |
Computes the base-e exponential of x.
| T | The type of parameter x. |
| x | A floating-point number. |
x.
|
inlinenoexcept |
Computes the base-e (natural) logarithm of x.
If x is negative, behavior is undefined.
| T | The type of parameter x. |
| x | A floating-point number. |
x.
|
inlinenoexcept |
Computes the absolute value of x.
| T | The type of parameter x. |
| x | A number. |
x.
|
inlinenoexcept |
Computes x raised to the power y.
If x is negative, behavior is undefined.
| T | The type of parameters x and y. |
| x | A floating-point number. |
| y | Another floating-point number. |
x raised to the power y.
|
inlinenoexcept |
Computes the reciprocal of x.
If x equals 0, behavior is undefined.
| T | The type of parameter x. |
| x | A floating-point number. |
x.
|
inlinenoexcept |
Computes the nonnegative square root of x.
If x is negative, behavior is undefined.
| T | The type of parameter x. |
| x | A floating-point number. |
x.
|
inlinenoexcept |
Computes the reciprocal of the nonnegative square root of x.
If x is less than or equal to 0, behavior is undefined.
| T | The type of parameter x. |
| x | A floating-point number. |
x.
|
inlinenoexcept |
Determines the minimum numeric value of the arguments.
| T | The type of parameters x and y. |
| x | A number. |
| y | Another number. |
|
inlinenoexcept |
Determines the maximum numeric value of the arguments.
| T | The type of parameters x and y. |
| x | A number. |
| y | Another number. |
|
inlinenoexcept |
Computes the bitwise AND of condition and value.
| T | The condition type. |
| U | The return type. |
| condition | The condition. |
| value | The return value when condition is trueX (where X is the number of bits in T). |
value or 0 depending on condition.
|
inlinenoexcept |
Selects a return value based on condition.
| T | The condition type. |
| U | The return type. |
| condition | The condition. |
| value | The return value when condition is trueX (where X is the number of bits in T). |
| otherwise | The return value when condition is falseX (where X is the number of bits in T). |
value or otherwise depending on condition.
|
inlinenoexcept |
Computes whether or not lhs is less than rhs.
| T | The type of parameters lhs and rhs. |
| lhs | The left-hand side operand. |
| rhs | The right-hand side operand. |
trueX if lhs is less than rhs and falseX otherwise (where X is the number of bits in T).
|
inlinenoexcept |
Computes whether or not lhs is less than or equal to rhs.
| T | The type of parameters lhs and rhs. |
| lhs | The left-hand side operand. |
| rhs | The right-hand side operand. |
trueX if lhs is less than or equal to rhs and falseX otherwise (where X is the number of bits in T).
|
inlinenoexcept |
Computes whether or not lhs is greater than rhs.
| T | The type of parameters lhs and rhs. |
| lhs | The left-hand side operand. |
| rhs | The right-hand side operand. |
trueX if lhs is greater than rhs and falseX otherwise (where X is the number of bits in T).
|
inlinenoexcept |
Computes whether or not lhs is greater than or equal to rhs.
| T | The type of parameters lhs and rhs. |
| lhs | The left-hand side operand. |
| rhs | The right-hand side operand. |
trueX if lhs is greater than or equal to rhs and falseX otherwise (where X is the number of bits in T).
|
inlinenoexcept |
Computes whether or not lhs is equal to rhs.
| T | The type of parameters lhs and rhs. |
| lhs | The left-hand side operand. |
| rhs | The right-hand side operand. |
trueX if lhs is equal to rhs and falseX otherwise (where X is the number of bits in T).
|
inlinenoexcept |
Computes whether or not lhs is not equal to rhs.
| T | The type of parameters lhs and rhs. |
| lhs | The left-hand side operand. |
| rhs | The right-hand side operand. |
trueX if lhs is not equal to rhs and falseX otherwise (where X is the number of bits in T).
1.8.10