runTest(runModes);
}
+TEST_F(PmeTest, ScalesTheBox)
+{
+ const int nsteps = 0;
+ const std::string theMdpFile = formatString("coulombtype = PME\n"
+ "nstcalcenergy = 1\n"
+ "nstenergy = 1\n"
+ "pme-order = 4\n"
+ "pbc = xy\n"
+ "nwall = 2\n"
+ "ewald-geometry = 3dc\n"
+ "wall_atomtype = OMet CMet\n"
+ "wall_density = 9 9.0\n"
+ "wall-ewald-zfac = 5\n"
+ "nsteps = %d\n",
+ nsteps
+ );
+
+ runner_.useStringAsMdpFile(theMdpFile);
+
+ RunModesList runModes;
+ runModes["PmeOnCpu"] = {"-pme", "cpu"};
+ //FIXME mixed mode scaling is broken
+ //runModes["PmeOnGpuFftOnCpu"] = {"-pme", "gpu", "-pmefft", "cpu"};
+ runModes["PmeOnGpuFftOnGpu"] = {"-pme", "gpu", "-pmefft", "gpu"};
+
+ runTest(runModes);
+}
+
}
}
}
--- /dev/null
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="referencedata.xsl"?>
+<ReferenceData>
+ <Energy Name="Conserved">
+ <Real Name="Time 0.000000 Step 0">47.730976</Real>
+ </Energy>
+ <Energy Name="Reciprocal">
+ <Real Name="Time 0.000000 Step 0">5.717979</Real>
+ </Energy>
+</ReferenceData>