"platforms/vscode:/vscode.git/clone" did not exist on "bdc8f29eaec9799e386d197153c1031ffc5be201"
Commit aee19db2 authored by Yutong Zhao's avatar Yutong Zhao
Browse files

Fixed reorderAtoms so that it always uses double precision periodicBoxSizeDouble.

parent fea6769a
...@@ -963,9 +963,9 @@ void OpenCLContext::reorderAtomsImpl(bool enforcePeriodic) { ...@@ -963,9 +963,9 @@ void OpenCLContext::reorderAtomsImpl(bool enforcePeriodic) {
Real minz = oldPosq[0].z, maxz = oldPosq[0].z; Real minz = oldPosq[0].z, maxz = oldPosq[0].z;
if (nonbonded->getUsePeriodic()) { if (nonbonded->getUsePeriodic()) {
minx = miny = minz = 0.0; minx = miny = minz = 0.0;
maxx = periodicBoxSize.x; maxx = periodicBoxSizeDouble.x;
maxy = periodicBoxSize.y; maxy = periodicBoxSizeDouble.y;
maxz = periodicBoxSize.z; maxz = periodicBoxSizeDouble.z;
} }
else { else {
for (int i = 1; i < numAtoms; i++) { for (int i = 1; i < numAtoms; i++) {
...@@ -1013,12 +1013,12 @@ void OpenCLContext::reorderAtomsImpl(bool enforcePeriodic) { ...@@ -1013,12 +1013,12 @@ void OpenCLContext::reorderAtomsImpl(bool enforcePeriodic) {
// Move each molecule position into the same box. // Move each molecule position into the same box.
for (int i = 0; i < numMolecules; i++) { for (int i = 0; i < numMolecules; i++) {
int xcell = (int) floor(molPos[i].x*invPeriodicBoxSize.x); int xcell = (int) floor(molPos[i].x*invPeriodicBoxSizeDouble.x);
int ycell = (int) floor(molPos[i].y*invPeriodicBoxSize.y); int ycell = (int) floor(molPos[i].y*invPeriodicBoxSizeDouble.y);
int zcell = (int) floor(molPos[i].z*invPeriodicBoxSize.z); int zcell = (int) floor(molPos[i].z*invPeriodicBoxSizeDouble.z);
Real dx = xcell*periodicBoxSize.x; Real dx = xcell*periodicBoxSizeDouble.x;
Real dy = ycell*periodicBoxSize.y; Real dy = ycell*periodicBoxSizeDouble.y;
Real dz = zcell*periodicBoxSize.z; Real dz = zcell*periodicBoxSizeDouble.z;
if (dx != 0.0f || dy != 0.0f || dz != 0.0f) { if (dx != 0.0f || dy != 0.0f || dz != 0.0f) {
molPos[i].x -= dx; molPos[i].x -= dx;
molPos[i].y -= dy; molPos[i].y -= dy;
......
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