Commit 9f8348cb authored by peastman's avatar peastman
Browse files

Merge pull request #588 from peastman/master

Fixed bug in getInducedDipoles()
parents d446dc26 d68ecd0f
...@@ -1744,17 +1744,18 @@ void CudaCalcAmoebaMultipoleForceKernel::getInducedDipoles(ContextImpl& context, ...@@ -1744,17 +1744,18 @@ void CudaCalcAmoebaMultipoleForceKernel::getInducedDipoles(ContextImpl& context,
ensureMultipolesValid(context); ensureMultipolesValid(context);
int numParticles = cu.getNumAtoms(); int numParticles = cu.getNumAtoms();
dipoles.resize(numParticles); dipoles.resize(numParticles);
const vector<int>& order = cu.getAtomIndex();
if (cu.getUseDoublePrecision()) { if (cu.getUseDoublePrecision()) {
vector<double> d; vector<double> d;
inducedDipole->download(d); inducedDipole->download(d);
for (int i = 0; i < numParticles; i++) for (int i = 0; i < numParticles; i++)
dipoles[i] = Vec3(d[3*i], d[3*i+1], d[3*i+2]); dipoles[order[i]] = Vec3(d[3*i], d[3*i+1], d[3*i+2]);
} }
else { else {
vector<float> d; vector<float> d;
inducedDipole->download(d); inducedDipole->download(d);
for (int i = 0; i < numParticles; i++) for (int i = 0; i < numParticles; i++)
dipoles[i] = Vec3(d[3*i], d[3*i+1], d[3*i+2]); dipoles[order[i]] = Vec3(d[3*i], d[3*i+1], d[3*i+2]);
} }
} }
......
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