diff --git a/230124-sampen/sampen.cpp b/230124-sampen/sampen.cpp index 185bc002743918f59b5cdef1c7342fa578134947..9a4899399675ede043214bcbdf3d7423e84aa921 100644 --- a/230124-sampen/sampen.cpp +++ b/230124-sampen/sampen.cpp @@ -107,21 +107,21 @@ double FastSampEn_ai(double *X, int N, int m, double r) D = t; } if (D <= r) - Ai++; + Bi++; if (j < N - m) { double t = fabs(X[i + m] - X[j + m]); if (t > D) D = t; if (D <= r) - Bi++; + Ai++; } } } - double s1 = 1.0 * Ai / ((N - m + 1) * (N - m) / 2); - double s2 = 1.0 * Bi / ((N - m) * (N - m - 1) / 2); - if (s1 == 0 || s2 == 0) + double B = 1.0 * Bi / ((N - m + 1) * (N - m) / 2); + double A = 1.0 * Ai / ((N - m) * (N - m - 1) / 2); + if (A == 0 || B == 0) return 0; - return -log(s2 / s1); + return -log(A / B); } double FastSampEn_ai_m2(double* X, int N, double r) @@ -135,19 +135,19 @@ double FastSampEn_ai_m2(double* X, int N, double r) if (t > D) D = t; if (D <= r) - Ai++; + Bi++; if (j < N - 2) { double t = fabs(X[i + 2] - X[j + 2]); if (t > D) D = t; if (D <= r) - Bi++; + Ai++; } } } - double s1 = 1.0 * Ai / ((N - 1) * (N - 2) / 2); - double s2 = 1.0 * Bi / ((N - 2) * (N - 3) / 2); - if (s1 == 0 || s2 == 0) + double B = 1.0 * Bi / ((N - 1) * (N - 2) / 2); + double A = 1.0 * Ai / ((N - 2) * (N - 3) / 2); + if (A == 0 || B == 0) return 0; - return -log(s2 / s1); + return -log(A / B); }