"csrc/vscode:/vscode.git/clone" did not exist on "34489f466e8f6ddf3b7318cd1556a5df8759c005"
Unverified Commit 2b8ad703 authored by Peter Eastman's avatar Peter Eastman Committed by GitHub
Browse files

Fixed exception when computing pressure (#4954)

parent 88f32f2d
...@@ -3768,21 +3768,6 @@ void CommonApplyMonteCarloBarostatKernel::initialize(const System& system, const ...@@ -3768,21 +3768,6 @@ void CommonApplyMonteCarloBarostatKernel::initialize(const System& system, const
void CommonApplyMonteCarloBarostatKernel::saveCoordinates(ContextImpl& context) { void CommonApplyMonteCarloBarostatKernel::saveCoordinates(ContextImpl& context) {
ContextSelector selector(cc); ContextSelector selector(cc);
cc.getPosq().copyTo(savedPositions);
cc.getVelm().copyTo(savedVelocities);
cc.getLongForceBuffer().copyTo(savedLongForces);
if (savedFloatForces.isInitialized())
cc.getFloatForceBuffer().copyTo(savedFloatForces);
lastPosCellOffsets = cc.getPosCellOffsets();
lastAtomOrder = cc.getAtomIndex();
}
void CommonApplyMonteCarloBarostatKernel::scaleCoordinates(ContextImpl& context, double scaleX, double scaleY, double scaleZ) {
ContextSelector selector(cc);
// check if atoms were reordered from energy evaluation before scaling
atomsWereReordered = cc.getAtomsWereReordered();
if (!hasInitializedKernels) { if (!hasInitializedKernels) {
hasInitializedKernels = true; hasInitializedKernels = true;
...@@ -3829,6 +3814,20 @@ void CommonApplyMonteCarloBarostatKernel::scaleCoordinates(ContextImpl& context, ...@@ -3829,6 +3814,20 @@ void CommonApplyMonteCarloBarostatKernel::scaleCoordinates(ContextImpl& context,
for (int i = 0; i < components; i++) for (int i = 0; i < components; i++)
kineticEnergyKernel->addArg(energyBuffers[i]); kineticEnergyKernel->addArg(energyBuffers[i]);
} }
cc.getPosq().copyTo(savedPositions);
cc.getVelm().copyTo(savedVelocities);
cc.getLongForceBuffer().copyTo(savedLongForces);
if (savedFloatForces.isInitialized())
cc.getFloatForceBuffer().copyTo(savedFloatForces);
lastPosCellOffsets = cc.getPosCellOffsets();
lastAtomOrder = cc.getAtomIndex();
}
void CommonApplyMonteCarloBarostatKernel::scaleCoordinates(ContextImpl& context, double scaleX, double scaleY, double scaleZ) {
ContextSelector selector(cc);
// check if atoms were reordered from energy evaluation before scaling
atomsWereReordered = cc.getAtomsWereReordered();
kernel->setArg(0, (float) scaleX); kernel->setArg(0, (float) scaleX);
kernel->setArg(1, (float) scaleY); kernel->setArg(1, (float) scaleY);
kernel->setArg(2, (float) scaleZ); kernel->setArg(2, (float) scaleZ);
......
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