mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-18 21:30:38 +01:00
[poincare/normal_distribution] Fix StandardNormalCumulDistFuncAtAbs
This commit is contained in:
committed by
EmilieNumworks
parent
2768c143c8
commit
061fe05b40
@@ -88,8 +88,8 @@ T NormalDistribution::StandardNormalCumulativeDistributiveFunctionAtAbscissa(T a
|
||||
if (std::isnan(abscissa)) {
|
||||
return NAN;
|
||||
}
|
||||
if (std::isinf(abscissa) || abscissa > k_boundStandardNormalDistribution) {
|
||||
return (T)1.0;
|
||||
if (std::isinf(abscissa) || std::fabs(abscissa) > k_boundStandardNormalDistribution) {
|
||||
return abscissa > (T)0.0 ? (T)1.0 : (T)0.0;
|
||||
}
|
||||
if (abscissa == (T)0.0) {
|
||||
return (T)0.5;
|
||||
|
||||
@@ -303,6 +303,10 @@ QUIZ_CASE(poincare_approximation_function) {
|
||||
|
||||
assert_expression_approximates_to<float>("normcdf(1.2, 3.4, 31.36)", "0.3472125");
|
||||
assert_expression_approximates_to<double>("normcdf(1.2, 3.4, 31.36)", "3.4721249841587ᴇ-1");
|
||||
assert_expression_approximates_to<float>("normcdf(-1ᴇ99,3.4,31.36)", "0");
|
||||
assert_expression_approximates_to<float>("normcdf(1ᴇ99,3.4,31.36)", "1");
|
||||
assert_expression_approximates_to<float>("normcdf(-6,0,1)", "0");
|
||||
assert_expression_approximates_to<float>("normcdf(6,0,1)", "1");
|
||||
|
||||
assert_expression_approximates_to<float>("normcdf2(0.5, 3.6, 1.3, 11.56)", "0.3436388");
|
||||
assert_expression_approximates_to<double>("normcdf2(0.5, 3.6, 1.3, 11.56)", "3.4363881299147ᴇ-1");
|
||||
|
||||
Reference in New Issue
Block a user