"platforms/reference/include/ReferenceCCMAAlgorithm.h" did not exist on "e561a67824a1a0ac544547ff4c08baa4853d1b5f"
Commit 559c7cff authored by peastman's avatar peastman
Browse files

Merge pull request #130 from peastman/master

Fixed bug in RPMD contractions
parents 42ebb837 a6f4acb6
...@@ -128,12 +128,12 @@ void CudaIntegrateRPMDStepKernel::initialize(const System& system, const RPMDInt ...@@ -128,12 +128,12 @@ void CudaIntegrateRPMDStepKernel::initialize(const System& system, const RPMDInt
if (copies != numCopies) { if (copies != numCopies) {
if (groupsByCopies.find(copies) == groupsByCopies.end()) { if (groupsByCopies.find(copies) == groupsByCopies.end()) {
groupsByCopies[copies] = 1<<group; groupsByCopies[copies] = 1<<group;
groupsNotContracted -= 1<<group;
if (copies > maxContractedCopies) if (copies > maxContractedCopies)
maxContractedCopies = copies; maxContractedCopies = copies;
} }
else else
groupsByCopies[copies] |= 1<<group; groupsByCopies[copies] |= 1<<group;
groupsNotContracted -= 1<<group;
} }
} }
if (maxContractedCopies > 0) { if (maxContractedCopies > 0) {
......
...@@ -108,12 +108,12 @@ void OpenCLIntegrateRPMDStepKernel::initialize(const System& system, const RPMDI ...@@ -108,12 +108,12 @@ void OpenCLIntegrateRPMDStepKernel::initialize(const System& system, const RPMDI
if (copies != numCopies) { if (copies != numCopies) {
if (groupsByCopies.find(copies) == groupsByCopies.end()) { if (groupsByCopies.find(copies) == groupsByCopies.end()) {
groupsByCopies[copies] = 1<<group; groupsByCopies[copies] = 1<<group;
groupsNotContracted -= 1<<group;
if (copies > maxContractedCopies) if (copies > maxContractedCopies)
maxContractedCopies = copies; maxContractedCopies = copies;
} }
else else
groupsByCopies[copies] |= 1<<group; groupsByCopies[copies] |= 1<<group;
groupsNotContracted -= 1<<group;
} }
} }
if (maxContractedCopies > 0) { if (maxContractedCopies > 0) {
......
...@@ -89,7 +89,6 @@ void ReferenceIntegrateRPMDStepKernel::initialize(const System& system, const RP ...@@ -89,7 +89,6 @@ void ReferenceIntegrateRPMDStepKernel::initialize(const System& system, const RP
if (copies != numCopies) { if (copies != numCopies) {
if (groupsByCopies.find(copies) == groupsByCopies.end()) { if (groupsByCopies.find(copies) == groupsByCopies.end()) {
groupsByCopies[copies] = 1<<group; groupsByCopies[copies] = 1<<group;
groupsNotContracted -= 1<<group;
contractionFFT[copies] = NULL; contractionFFT[copies] = NULL;
fftpack_init_1d(&contractionFFT[copies], copies); fftpack_init_1d(&contractionFFT[copies], copies);
if (copies > maxContractedCopies) if (copies > maxContractedCopies)
...@@ -97,6 +96,7 @@ void ReferenceIntegrateRPMDStepKernel::initialize(const System& system, const RP ...@@ -97,6 +96,7 @@ void ReferenceIntegrateRPMDStepKernel::initialize(const System& system, const RP
} }
else else
groupsByCopies[copies] |= 1<<group; groupsByCopies[copies] |= 1<<group;
groupsNotContracted -= 1<<group;
} }
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment