九韶内核 1.0.0.0
|
常用数学常数 更多...
#include <type_traits>
命名空间 | |
namespace | AMCAX |
AMCAX 内核提供的所有接口所在的命名空间。 | |
namespace | AMCAX::Constants |
数学常数命名空间。 | |
变量 | |
template<typename T> | |
constexpr T | AMCAX::Constants::e_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(2.718281828459045235360287471352662498L) |
自然对数的底数(也称为纳皮尔常数/欧拉数) | |
constexpr double | AMCAX::Constants::e = e_v<double> |
自然对数的底数(也称为纳皮尔常数/欧拉数) | |
template<typename T> | |
constexpr T | AMCAX::Constants::log2e_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(1.442695040888963407359924681001892137L) |
log2(e) | |
constexpr double | AMCAX::Constants::log2e = log2e_v<double> |
log2(e) | |
template<typename T> | |
constexpr T | AMCAX::Constants::log10e_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.434294481903251827651128918916605082L) |
log10(e) | |
constexpr double | AMCAX::Constants::log10e = log10e_v<double> |
log10(e) | |
template<typename T> | |
constexpr T | AMCAX::Constants::pi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(3.141592653589793238462643383279502884L) |
数学常数 Pi,圆的周长与直径之比 | |
constexpr double | AMCAX::Constants::pi = pi_v<double> |
数学常数 Pi,圆的周长与直径之比 | |
template<typename T> | |
constexpr T | AMCAX::Constants::half_pi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(1.570796326794896619231321691639751442L) |
pi/2 | |
constexpr double | AMCAX::Constants::half_pi = half_pi_v<double> |
pi/2 | |
template<typename T> | |
constexpr T | AMCAX::Constants::quarter_pi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.785398163397448309615660845819875721L) |
pi/4 | |
constexpr double | AMCAX::Constants::quarter_pi = quarter_pi_v<double> |
pi/4 | |
template<typename T> | |
constexpr T | AMCAX::Constants::two_pi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(6.283185307179586476925286766559005768L) |
2pi | |
constexpr double | AMCAX::Constants::two_pi = two_pi_v<double> |
2pi | |
template<typename T> | |
constexpr T | AMCAX::Constants::inv_pi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.318309886183790671537767526745028724L) |
1/pi | |
constexpr double | AMCAX::Constants::inv_pi = inv_pi_v<double> |
1/pi | |
template<typename T> | |
constexpr T | AMCAX::Constants::two_inv_pi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.636619772367581343075535053490057448L) |
2/pi | |
constexpr double | AMCAX::Constants::two_inv_pi = two_inv_pi_v<double> |
2/pi | |
template<typename T> | |
constexpr T | AMCAX::Constants::inv_sqrtpi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.564189583547756286948079451560772586L) |
1/sqrt(pi) | |
constexpr double | AMCAX::Constants::inv_sqrtpi = inv_sqrtpi_v<double> |
1/sqrt(pi) | |
template<typename T> | |
constexpr T | AMCAX::Constants::two_inv_sqrtpi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(1.128379167095512573896158903121545172L) |
2/sqrt(pi) | |
constexpr double | AMCAX::Constants::two_inv_sqrtpi = two_inv_sqrtpi_v<double> |
2/sqrt(pi) | |
template<typename T> | |
constexpr T | AMCAX::Constants::ln2_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.693147180559945309417232121458176568L) |
ln(2) | |
constexpr double | AMCAX::Constants::ln2 = ln2_v<double> |
ln(2) | |
template<typename T> | |
constexpr T | AMCAX::Constants::ln10_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(2.302585092994045684017991454684364208L) |
ln(10) | |
constexpr double | AMCAX::Constants::ln10 = ln10_v<double> |
ln(10) | |
template<typename T> | |
constexpr T | AMCAX::Constants::sqrt2_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(1.414213562373095048801688724209698079L) |
sqrt(2) | |
constexpr double | AMCAX::Constants::sqrt2 = sqrt2_v<double> |
sqrt(2) | |
template<typename T> | |
constexpr T | AMCAX::Constants::half_sqrt2_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.707106781186547524400844362104849039L) |
sqrt(2)/2 | |
constexpr double | AMCAX::Constants::half_sqrt2 = half_sqrt2_v<double> |
sqrt(2)/2 | |
template<typename T> | |
constexpr T | AMCAX::Constants::inv_sqrt2_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.707106781186547524400844362104849039L) |
1/sqrt(2),与 half_sqrt2_v 相同 | |
constexpr double | AMCAX::Constants::inv_sqrt2 = inv_sqrt2_v<double> |
1/sqrt(2),与 half_sqrt2 相同 | |
template<typename T> | |
constexpr T | AMCAX::Constants::sqrt3_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(1.732050807568877293527446341505872367L) |
sqrt(3) | |
constexpr double | AMCAX::Constants::sqrt3 = sqrt3_v<double> |
sqrt(3) | |
template<typename T> | |
constexpr T | AMCAX::Constants::inv_sqrt3_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.577350269189625764509148780501957456L) |
1/sqrt(3) | |
constexpr double | AMCAX::Constants::inv_sqrt3 = inv_sqrt3_v<double> |
1/sqrt(3) | |
template<typename T> | |
constexpr T | AMCAX::Constants::egamma_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(0.577215664901532860606512090082402431L) |
欧拉-马斯刻若尼常数 | |
constexpr double | AMCAX::Constants::egamma = egamma_v<double> |
欧拉-马斯刻若尼常数 | |
template<typename T> | |
constexpr T | AMCAX::Constants::phi_v = static_cast<std::enable_if_t<std::is_floating_point_v<T>, T>>(1.618033988749894848204586834365638118L) |
黄金比例 | |
constexpr double | AMCAX::Constants::phi = phi_v<double> |
黄金比例 | |
常用数学常数