diff --git a/modules/img/alg/tests/test_stat.cc b/modules/img/alg/tests/test_stat.cc
index 9c9694a4caace6c7b79c14fd9d2fc2c9a1b57778..b736c6bd93d30aebbcc2eb05616e70c4d0d19f7e 100644
--- a/modules/img/alg/tests/test_stat.cc
+++ b/modules/img/alg/tests/test_stat.cc
@@ -52,7 +52,7 @@ void test() {
   im.Apply(stat);
   BOOST_CHECK_CLOSE(stat.GetMean(),Real(5.0),Real(0.0001));
   BOOST_CHECK_CLOSE(stat.GetStandardDeviation(),Real(2.58198889747),Real(0.0001));
-  BOOST_CHECK_CLOSE(stat.GetSkewness()+0.5,Real(0.5),Real(0.0001));
+  BOOST_CHECK_CLOSE(stat.GetSkewness()+Real(0.5),Real(0.5),Real(0.0001));
   BOOST_CHECK_CLOSE(stat.GetKurtosis(),Real(1.77),Real(0.0001));
 
   // check for rounding errors
@@ -60,7 +60,7 @@ void test() {
   im.Apply(stat);
   BOOST_CHECK_CLOSE(stat.GetMean(),Real(10005.0),Real(0.0001));
   BOOST_CHECK_CLOSE(stat.GetStandardDeviation(),Real(2.58198889747),Real(0.01));
-  BOOST_CHECK_CLOSE(stat.GetSkewness()+0.5,Real(0.5),Real(0.01));
+  BOOST_CHECK_CLOSE(stat.GetSkewness()+Real(0.5),Real(0.5),Real(0.01));
   BOOST_CHECK_CLOSE(stat.GetKurtosis(),Real(1.77),Real(0.01));
 
 
@@ -72,7 +72,7 @@ void test() {
   }
   BOOST_CHECK_CLOSE(acc.GetMean(),Real(5.0),Real(0.0001));
   BOOST_CHECK_CLOSE(acc.GetStandardDeviation(),Real(2.58198889747),Real(0.0001));
-  BOOST_CHECK_CLOSE(acc.GetSkewness()+0.5,Real(0.5),Real(0.0001));
+  BOOST_CHECK_CLOSE(acc.GetSkewness()+Real(0.5),Real(0.5),Real(0.0001));
   BOOST_CHECK_CLOSE(acc.GetKurtosis(),Real(1.77),Real(0.0001));
 
   StatAccumulator<> acc1,acc2,acc3;
@@ -84,7 +84,7 @@ void test() {
   StatAccumulator<> acc_c=acc1+acc2+acc3;
   BOOST_CHECK_CLOSE(acc_c.GetMean(),Real(5.0),Real(0.0001));
   BOOST_CHECK_CLOSE(acc_c.GetStandardDeviation(),Real(2.58198889747),Real(0.0001));
-  BOOST_CHECK_CLOSE(acc_c.GetSkewness()+0.5,Real(0.5),Real(0.0001));
+  BOOST_CHECK_CLOSE(acc_c.GetSkewness()+Real(0.5),Real(0.5),Real(0.0001));
   BOOST_CHECK_CLOSE(acc_c.GetKurtosis(),Real(1.77),Real(0.0001));
 }
 
diff --git a/modules/mol/base/tests/test_ics.cc b/modules/mol/base/tests/test_ics.cc
index 0b19877c8a95b28e1230692c1a35a64cf7a0d8d6..4f84f6a78bf0882302f9d5edce87ed13656b6064 100644
--- a/modules/mol/base/tests/test_ics.cc
+++ b/modules/mol/base/tests/test_ics.cc
@@ -107,7 +107,7 @@ BOOST_AUTO_TEST_CASE(ics_update_icsbondlength)
 {
   TorsionStructure s;
   mol::BondHandle bond = s.a2.FindBondToAtom(s.a3);
-  BOOST_CHECK_CLOSE(bond.GetLength(), 1.0, EPSILON);
+  BOOST_CHECK_CLOSE(bond.GetLength(), Real(1.0), Real(EPSILON));
 }
 
 BOOST_AUTO_TEST_CASE(ics_settorsion_unbuffered)
@@ -115,20 +115,20 @@ BOOST_AUTO_TEST_CASE(ics_settorsion_unbuffered)
   Real eps = 0.0001;
   TorsionStructure s;
   ICSEditor e = s.e.EditICS(mol::UNBUFFERED_EDIT);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(M_PI), Real(eps));
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t1,0);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI), Real(eps));
   e.SetTorsionAngle(s.t2,M_PI/4);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), -M_PI+M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(-M_PI+M_PI/4), Real(eps));
   e.SetTorsionAngle(s.t1,-M_PI/4);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), -M_PI/4, eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), 3/4.*M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(-M_PI/4), Real(eps));
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(3/4.*M_PI), Real(eps));
   e.RotateTorsionAngle(s.t1, M_PI/4);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(std::abs(s.t2.GetAngle()), M_PI, eps);
+  BOOST_CHECK_CLOSE(std::abs(s.t2.GetAngle()), Real(M_PI), Real(eps));
 }
 
 BOOST_AUTO_TEST_CASE(ics_settorsion_buffered)
@@ -136,20 +136,20 @@ BOOST_AUTO_TEST_CASE(ics_settorsion_buffered)
   Real eps = 0.0001;
   TorsionStructure s;
   ICSEditor e = s.e.EditICS(mol::BUFFERED_EDIT);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(M_PI), Real(eps));
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t1,0);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI), Real(eps));
   e.SetTorsionAngle(s.t2,M_PI/4);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), -M_PI+M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(-M_PI+M_PI/4), Real(eps));
   e.SetTorsionAngle(s.t1,-M_PI/4);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), -M_PI/4, eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), 3/4.*M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(-M_PI/4), Real(eps));
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(3/4.*M_PI), Real(eps));
   e.RotateTorsionAngle(s.t1, M_PI/4);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(std::abs(s.t2.GetAngle()), M_PI, eps);
+  BOOST_CHECK_CLOSE(std::abs(s.t2.GetAngle()), Real(M_PI), Real(eps));
 }
 
 BOOST_AUTO_TEST_CASE(ics_settorsion_unbuffered_update_others)
@@ -157,20 +157,20 @@ BOOST_AUTO_TEST_CASE(ics_settorsion_unbuffered_update_others)
   Real eps = 0.0001;
   TorsionStructure s;
   ICSEditor e = s.e.EditICS(mol::UNBUFFERED_EDIT);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(M_PI), Real(eps));
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t1,0,false);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t2,M_PI/4,false);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
   e.SetTorsionAngle(s.t1,-M_PI/4,false);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), -M_PI/4, eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(-M_PI/4), Real(eps));
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
   e.RotateTorsionAngle(s.t1, M_PI/4,false);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
 }
 
 BOOST_AUTO_TEST_CASE(ics_settorsion_buffered_update_others)
@@ -178,20 +178,20 @@ BOOST_AUTO_TEST_CASE(ics_settorsion_buffered_update_others)
   Real eps = 0.0001;
   TorsionStructure s;
   ICSEditor e = s.e.EditICS(mol::BUFFERED_EDIT);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), M_PI, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(M_PI), Real(eps));
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t1,0,false);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t2,M_PI/4,false);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
   e.SetTorsionAngle(s.t1,-M_PI/4,false);
-  BOOST_CHECK_CLOSE(s.t1.GetAngle(), -M_PI/4, eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t1.GetAngle(), Real(-M_PI/4), Real(eps));
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
   e.RotateTorsionAngle(s.t1, M_PI/4,false);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
 }
 
 BOOST_AUTO_TEST_CASE(ics_settorsion_linear_unbuffered)
@@ -207,13 +207,13 @@ BOOST_AUTO_TEST_CASE(ics_settorsion_linear_unbuffered)
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.SetTorsionAngle(s.t2,M_PI/4);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
   e.SetTorsionAngle(s.t1,-M_PI/4);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
   BOOST_CHECK_SMALL(s.t2.GetAngle(), eps);
   e.RotateTorsionAngle(s.t1, M_PI/4);
   BOOST_CHECK_SMALL(s.t1.GetAngle(), eps);
-  BOOST_CHECK_CLOSE(s.t2.GetAngle(), M_PI/4, eps);
+  BOOST_CHECK_CLOSE(s.t2.GetAngle(), Real(M_PI/4), Real(eps));
 }
 
 BOOST_AUTO_TEST_CASE(ics_angle_trivia)