math_common.h File Reference
Go to the source code of this file.
Namespaces | |
cl | |
deduce_type_t takes an arbitrary type and attempts to map it to a cl::sycl::cl_type . | |
cl::sycl | |
Macros | |
#define | COMPUTECPP_DETAIL_NAMESPACE abacus::detail::common |
Functions | |
template<typename F1 , typename F2 , COMPUTECPP_REQUIRES((detail::builtin::is_genfloat< F1 >::value && std::is_same< F1, F2 >::value)||(detail::builtin::is_genfloath< F1 >::value && std::is_same< F2, half >::value)||(detail::builtin::is_genfloatf< F1 >::value && std::is_same< F2, float >::value)||(detail::builtin::is_genfloatd< F1 >::value && std::is_same< F2, double >::value)) > | |
F1 | cl::sycl::clamp (F1 x, F2 minval, F2 maxval) noexcept |
Returns fmin(fmax(x, minval), maxval) . More... | |
template<typename F , typename return_t = detail::collapse_swizzled_vec_t<F>, COMPUTECPP_REQUIRES(detail::builtin::is_genfloat< F >::value) > | |
return_t | cl::sycl::degrees (const F x) noexcept |
Converts radians to degrees, i.e. More... | |
template<typename F1 , typename F2 , COMPUTECPP_REQUIRES((detail::builtin::is_genfloat< F1 >::value && std::is_same< F1, F2 >::value)||(detail::builtin::is_genfloath< F1 >::value && std::is_same< F2, half >::value)||(detail::builtin::is_genfloatf< F1 >::value && std::is_same< F2, float >::value)||(detail::builtin::is_genfloatd< F1 >::value && std::is_same< F2, double >::value)) > | |
F1 | cl::sycl::abs (F1 x, F2 y) noexcept |
Compute absolute value of a floating-point number. More... | |
template<typename F1 , typename F2 , typename F = detail::common_return_t<F1, F2>, COMPUTECPP_REQUIRES((detail::builtin::is_genfloat< F1 >::value && detail::builtin::is_genfloat< F2 >::value)||(detail::builtin::is_genfloath< F1 >::value && detail::builtin::is_sgenfloat< F2, half >::value)||(detail::builtin::is_genfloatf< F1 >::value && detail::builtin::is_sgenfloat< F2, float >::value)||(detail::builtin::is_genfloatd< F1 >::value && detail::builtin::is_sgenfloat< F2, double >::value)) > | |
F | cl::sycl::max (F1 x, F2 y) noexcept |
Returns y if x < y , otherwise it returns x. More... | |
template<typename F1 , typename F2 , typename F = detail::common_return_t<F1, F2>, COMPUTECPP_REQUIRES((detail::builtin::is_genfloat< F1 >::value && detail::builtin::is_genfloat< F2 >::value)||(detail::builtin::is_genfloath< F1 >::value && detail::builtin::is_sgenfloat< F2, half >::value)||(detail::builtin::is_genfloatf< F1 >::value && detail::builtin::is_sgenfloat< F2, float >::value)||(detail::builtin::is_genfloatd< F1 >::value && detail::builtin::is_sgenfloat< F2, double >::value)) > | |
F | cl::sycl::min (F1 x, F2 y) noexcept |
Returns y if x > y , otherwise it returns x. More... | |
template<typename F1 , typename F2 , COMPUTECPP_REQUIRES((detail::builtin::is_genfloat< F1 >::value && std::is_same< F1, F2 >::value)||(detail::builtin::is_genfloath< F1 >::value && std::is_same< F2, half >::value)||(detail::builtin::is_genfloatf< F1 >::value && std::is_same< F2, float >::value)||(detail::builtin::is_genfloatd< F1 >::value && std::is_same< F2, double >::value)) > | |
F1 | cl::sycl::mix (F1 x, F1 y, F2 a) noexcept |
Returns the linear blend of x&y implemented as: x + (y - x) * a. More... | |
template<typename F , typename return_t = detail::collapse_swizzled_vec_t<F>, COMPUTECPP_REQUIRES(detail::builtin::is_genfloat< F >::value) > | |
return_t | cl::sycl::radians (const F x) noexcept |
Converts degrees to radians, i.e. More... | |
template<typename F1 , typename F2 , COMPUTECPP_REQUIRES((detail::builtin::is_genfloat< F1 >::value && std::is_same< F1, F2 >::value)||(std::is_same< F1, half >::value && detail::builtin::is_genfloath< F2 >::value)||(std::is_same< F1, float >::value && detail::builtin::is_genfloatf< F2 >::value)||(std::is_same< F1, double >::value && detail::builtin::is_genfloatd< F2 >::value)) > | |
F2 | cl::sycl::step (F1 edge, F2 x) noexcept |
Returns 0.0 if x < edge , otherwise it returns 1.0. More... | |
Macro Definition Documentation
◆ COMPUTECPP_DETAIL_NAMESPACE
#define COMPUTECPP_DETAIL_NAMESPACE abacus::detail::common |
Definition at line 24 of file math_common.h.