# | Line 1042 | Line 1042 | namespace OpenMD { | |
---|---|---|
1042 | * the parallel decomposition. | |
1043 | */ | |
1044 | bool ForceMatrixDecomposition::skipAtomPair(int atom1, int atom2, int cg1, int cg2) { | |
1045 | < | int unique_id_1, unique_id_2, group1, group2; |
1045 | > | int unique_id_1, unique_id_2; |
1046 | ||
1047 | #ifdef IS_MPI | |
1048 | // in MPI, we have to look up the unique IDs for each atom | |
1049 | unique_id_1 = AtomRowToGlobal[atom1]; | |
1050 | unique_id_2 = AtomColToGlobal[atom2]; | |
1051 | < | group1 = cgRowToGlobal[cg1]; |
1052 | < | group2 = cgColToGlobal[cg2]; |
1051 | > | // group1 = cgRowToGlobal[cg1]; |
1052 | > | // group2 = cgColToGlobal[cg2]; |
1053 | #else | |
1054 | unique_id_1 = AtomLocalToGlobal[atom1]; | |
1055 | unique_id_2 = AtomLocalToGlobal[atom2]; | |
1056 | < | group1 = cgLocalToGlobal[cg1]; |
1057 | < | group2 = cgLocalToGlobal[cg2]; |
1056 | > | int group1 = cgLocalToGlobal[cg1]; |
1057 | > | int group2 = cgLocalToGlobal[cg2]; |
1058 | #endif | |
1059 | ||
1060 | if (unique_id_1 == unique_id_2) return true; | |
# | Line 1295 | Line 1295 | namespace OpenMD { | |
1295 | #endif | |
1296 | ||
1297 | RealType rList_ = (largestRcut_ + skinThickness_); | |
1298 | – | RealType rl2 = rList_ * rList_; |
1298 | Snapshot* snap_ = sman_->getCurrentSnapshot(); | |
1299 | Mat3x3d Hmat = snap_->getHmat(); | |
1300 | Vector3d Hx = Hmat.getColumn(0); | |
# | Line 1339 | Line 1338 | namespace OpenMD { | |
1338 | for (int j = 0; j < 3; j++) { | |
1339 | scaled[j] -= roundMe(scaled[j]); | |
1340 | scaled[j] += 0.5; | |
1341 | + | // Handle the special case when an object is exactly on the |
1342 | + | // boundary (a scaled coordinate of 1.0 is the same as |
1343 | + | // scaled coordinate of 0.0) |
1344 | + | if (scaled[j] >= 1.0) scaled[j] -= 1.0; |
1345 | } | |
1346 | ||
1347 | // find xyz-indices of cell that cutoffGroup is in. | |
# | Line 1363 | Line 1366 | namespace OpenMD { | |
1366 | for (int j = 0; j < 3; j++) { | |
1367 | scaled[j] -= roundMe(scaled[j]); | |
1368 | scaled[j] += 0.5; | |
1369 | + | // Handle the special case when an object is exactly on the |
1370 | + | // boundary (a scaled coordinate of 1.0 is the same as |
1371 | + | // scaled coordinate of 0.0) |
1372 | + | if (scaled[j] >= 1.0) scaled[j] -= 1.0; |
1373 | } | |
1374 | ||
1375 | // find xyz-indices of cell that cutoffGroup is in. |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |