| 71 |
|
forceField_ = info_->getForceField(); |
| 72 |
|
interactionMan_ = new InteractionManager(); |
| 73 |
|
fDecomp_ = new ForceMatrixDecomposition(info_, interactionMan_); |
| 74 |
+ |
thermo = new Thermo(info_); |
| 75 |
|
} |
| 76 |
|
|
| 77 |
|
/** |
| 434 |
|
perturbations_.push_back(eField); |
| 435 |
|
} |
| 436 |
|
|
| 437 |
+ |
usePeriodicBoundaryConditions_ = info_->getSimParams()->getUsePeriodicBoundaryConditions(); |
| 438 |
+ |
|
| 439 |
|
fDecomp_->distributeInitialData(); |
| 440 |
< |
|
| 441 |
< |
initialized_ = true; |
| 442 |
< |
|
| 440 |
> |
|
| 441 |
> |
initialized_ = true; |
| 442 |
> |
|
| 443 |
|
} |
| 444 |
< |
|
| 444 |
> |
|
| 445 |
|
void ForceManager::calcForces() { |
| 446 |
|
|
| 447 |
|
if (!initialized_) initialize(); |
| 448 |
< |
|
| 448 |
> |
|
| 449 |
|
preCalculation(); |
| 450 |
|
shortRangeInteractions(); |
| 451 |
|
longRangeInteractions(); |
| 729 |
|
|
| 730 |
|
if (iLoop == loopStart) { |
| 731 |
|
bool update_nlist = fDecomp_->checkNeighborList(); |
| 732 |
< |
if (update_nlist) |
| 732 |
> |
if (update_nlist) { |
| 733 |
> |
if (!usePeriodicBoundaryConditions_) |
| 734 |
> |
Mat3x3d bbox = thermo->getBoundingBox(); |
| 735 |
|
neighborList = fDecomp_->buildNeighborList(); |
| 736 |
< |
} |
| 736 |
> |
} |
| 737 |
> |
} |
| 738 |
|
|
| 739 |
|
for (vector<pair<int, int> >::iterator it = neighborList.begin(); |
| 740 |
|
it != neighborList.end(); ++it) { |