aboutsummaryrefslogtreecommitdiffstats
path: root/util/generic/ymath.cpp
diff options
context:
space:
mode:
authorAlexander Smirnov <alex@ydb.tech>2024-11-20 11:14:58 +0000
committerAlexander Smirnov <alex@ydb.tech>2024-11-20 11:14:58 +0000
commit31773f157bf8164364649b5f470f52dece0a4317 (patch)
tree33d0f7eef45303ab68cf08ab381ce5e5e36c5240 /util/generic/ymath.cpp
parent2c7938962d8689e175574fc1e817c05049f27905 (diff)
parenteff600952d5dfe17942f38f510a8ac2b203bb3a5 (diff)
downloadydb-31773f157bf8164364649b5f470f52dece0a4317.tar.gz
Merge branch 'rightlib' into mergelibs-241120-1113
Diffstat (limited to 'util/generic/ymath.cpp')
-rw-r--r--util/generic/ymath.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/util/generic/ymath.cpp b/util/generic/ymath.cpp
index 31270728f4..a28a71b0e0 100644
--- a/util/generic/ymath.cpp
+++ b/util/generic/ymath.cpp
@@ -13,15 +13,17 @@ float Exp2f(float x) {
double Erf(double x) {
static constexpr double _M_2_SQRTPI = 1.12837916709551257390;
static constexpr double eps = 1.0e-7;
- if (fabs(x) >= 3.75)
+ if (fabs(x) >= 3.75) {
return x > 0 ? 1.0 : -1.0;
+ }
double r = _M_2_SQRTPI * x;
double f = r;
for (int i = 1;; ++i) {
r *= -x * x / i;
f += r / (2 * i + 1);
- if (fabs(r) < eps * (2 * i + 1))
+ if (fabs(r) < eps * (2 * i + 1)) {
break;
+ }
}
return f;
}