Relax tolerance for bd tests
authorMark Abraham <mark.j.abraham@gmail.com>
Tue, 26 Nov 2019 09:54:14 +0000 (10:54 +0100)
committerPaul Bauer <paul.bauer.q@gmail.com>
Tue, 26 Nov 2019 14:47:50 +0000 (15:47 +0100)
The implementation is somehow not very reproducible.

Refs #3205

Change-Id: Ibf9de00d6e67b8e2237cc8726f300b2bf8ad2327

src/programs/mdrun/tests/exactcontinuation.cpp

index 148e5f72efb5a8e031fb82ce3e9a700607faa8f4..db688cdd1824c7db3b4495b2f45c9176a1e08e4d 100644 (file)
@@ -372,8 +372,17 @@ TEST_P(MdrunNoAppendContinuationIsExact, WithinTolerances)
     // with forces on CPUs, but there is no real risk of a bug with
     // those propagators that would only be caught with a tighter
     // tolerance in this particular test.
+    int ulpToleranceInMixed  = 32;
+    int ulpToleranceInDouble = 64;
+    if (integrator == "bd")
+    {
+        // Somehow, the bd integrator has never been as reproducible
+        // as the others, either in continuations or reruns.
+        ulpToleranceInMixed = 128;
+    }
     EnergyTermsToCompare energyTermsToCompare{ {
-            { interaction_function[F_EPOT].longname, relativeToleranceAsPrecisionDependentUlp(10.0, 32, 64) },
+            { interaction_function[F_EPOT].longname,
+              relativeToleranceAsPrecisionDependentUlp(10.0, ulpToleranceInMixed, ulpToleranceInDouble) },
     } };
 
     int numWarningsToTolerate = 1;