| 225 |  | evaluator.loadScriptString(objectSelection); | 
| 226 |  | seleMan.setSelectionSet(evaluator.evaluate()); | 
| 227 |  | int selectionCount = seleMan.getSelectionCount(); | 
| 228 | < |  | 
| 228 | > |  | 
| 229 | > | #ifdef IS_MPI | 
| 230 | > | MPI_Allreduce(MPI_IN_PLACE, &selectionCount, 1, MPI_INT, MPI_SUM, | 
| 231 | > | MPI_COMM_WORLD); | 
| 232 | > | #endif | 
| 233 | > |  | 
| 234 |  | sprintf(painCave.errMsg, | 
| 235 |  | "Restraint Info: The specified restraint objectSelection,\n" | 
| 236 |  | "\t\t%s\n" | 
| 319 |  | void RestraintForceManager::calcForces(){ | 
| 320 |  |  | 
| 321 |  | ForceManager::calcForces(); | 
| 322 | < | RealType restPot_local, restPot; | 
| 322 | > | RealType restPot(0.0); | 
| 323 |  |  | 
| 324 | < | restPot_local = doRestraints(1.0); | 
| 324 | > | restPot = doRestraints(1.0); | 
| 325 |  |  | 
| 326 |  | #ifdef IS_MPI | 
| 327 | < | MPI_Allreduce(&restPot_local, &restPot, 1, | 
| 328 | < | MPI_REALTYPE, MPI_SUM, MPI_COMM_WORLD); | 
| 324 | < | #else | 
| 325 | < | restPot = restPot_local; | 
| 327 | > | MPI_Allreduce(MPI_IN_PLACE, &restPot, 1, MPI_REALTYPE, MPI_SUM, | 
| 328 | > | MPI_COMM_WORLD); | 
| 329 |  | #endif | 
| 330 | + |  | 
| 331 |  | currSnapshot_ = info_->getSnapshotManager()->getCurrentSnapshot(); | 
| 332 |  | RealType pot = currSnapshot_->getLongRangePotential(); | 
| 333 |  | pot += restPot; | 
| 415 |  | index++; | 
| 416 |  | } | 
| 417 |  |  | 
| 418 | < | unscaledPotential_ += mRest->getUnscaledPotential(); | 
| 418 | > | unscaledPotential_ += mRest->getUnscaledPotential(); | 
| 419 |  |  | 
| 416 | – | restInfo = mRest->getRestraintInfo(); | 
| 417 | – |  | 
| 420 |  | // only collect data on restraints that we're going to print: | 
| 421 |  | if (mRest->getPrintRestraint()) | 
| 422 | + | restInfo = mRest->getRestraintInfo(); | 
| 423 |  | restInfo_.push_back(restInfo); | 
| 424 |  | } | 
| 425 |  |  | 
| 479 |  |  | 
| 480 |  | unscaledPotential_ += oRest->getUnscaledPotential(); | 
| 481 |  |  | 
| 479 | – | restInfo = oRest->getRestraintInfo(); | 
| 480 | – |  | 
| 482 |  | // only collect data on restraints that we're going to print: | 
| 483 |  | if (oRest->getPrintRestraint()) | 
| 484 | + | restInfo = oRest->getRestraintInfo(); | 
| 485 |  | restInfo_.push_back(restInfo); | 
| 486 |  | } | 
| 487 |  |  |