Relax cross-correlation test precision
authorChristian Blau <cblau@gwdg.de>
Wed, 4 Dec 2019 15:52:01 +0000 (16:52 +0100)
committerPaul Bauer <paul.bauer.q@gmail.com>
Thu, 5 Dec 2019 08:00:59 +0000 (09:00 +0100)
Relase the floating point precision in cross-correlation evaluations on
large data arrays further. i386 fails here with debian experimental build.

Refs #3205

Change-Id: I86c9ad1804da5be98671ac14a5bc37ea5636aad0

src/gromacs/math/tests/densityfit.cpp

index 1efd3ed325fd9da0b80aa2530b5fd75e284f5357..1ebda302a7b0d7a228b041ca7e4b181048b91cad 100644 (file)
@@ -210,7 +210,7 @@ TEST(DensitySimilarityTest, CrossCorrelationIsOne)
     std::iota(begin(comparedDensity), end(comparedDensity), -10000);
 
     const real             expectedSimilarity = 1;
-    FloatingPointTolerance tolerance(relativeToleranceAsUlp(1.0, 10'000));
+    FloatingPointTolerance tolerance(relativeToleranceAsUlp(1.0, 100'000));
     EXPECT_REAL_EQ_TOL(expectedSimilarity, measure.similarity(comparedDensity.asConstView()), tolerance);
 }
 
@@ -230,7 +230,7 @@ TEST(DensitySimilarityTest, CrossCorrelationIsMinusOneWhenAntiCorrelated)
     std::iota(begin(comparedDensity), end(comparedDensity), -10000);
 
     const real             expectedSimilarity = -1;
-    FloatingPointTolerance tolerance(relativeToleranceAsUlp(-1.0, 10'000));
+    FloatingPointTolerance tolerance(relativeToleranceAsUlp(-1.0, 100'000));
     EXPECT_REAL_EQ_TOL(expectedSimilarity, measure.similarity(comparedDensity.asConstView()), tolerance);
 }