367 |
|
exclude_.addPair(c, d); |
368 |
|
} |
369 |
|
|
370 |
< |
|
370 |
> |
Molecule::RigidBodyIterator rbIter; |
371 |
> |
RigidBody* rb; |
372 |
> |
for (rb = mol->beginRigidBody(rbIter); rb != NULL; rb = mol->nextRigidBody(rbIter)) { |
373 |
> |
std::vector<Atom*> atoms = rb->getAtoms(); |
374 |
> |
for (int i = 0; i < atoms.size() -1 ; ++i) { |
375 |
> |
for (int j = i + 1; j < atoms.size(); ++j) { |
376 |
> |
a = atoms[i]->getGlobalIndex(); |
377 |
> |
b = atoms[j]->getGlobalIndex(); |
378 |
> |
exclude_.addPair(a, b); |
379 |
> |
} |
380 |
> |
} |
381 |
> |
} |
382 |
> |
|
383 |
|
} |
384 |
|
|
385 |
|
void SimInfo::removeExcludePairs(Molecule* mol) { |
424 |
|
exclude_.removePair(c, d); |
425 |
|
} |
426 |
|
|
427 |
+ |
Molecule::RigidBodyIterator rbIter; |
428 |
+ |
RigidBody* rb; |
429 |
+ |
for (rb = mol->beginRigidBody(rbIter); rb != NULL; rb = mol->nextRigidBody(rbIter)) { |
430 |
+ |
std::vector<Atom*> atoms = rb->getAtoms(); |
431 |
+ |
for (int i = 0; i < atoms.size() -1 ; ++i) { |
432 |
+ |
for (int j = i + 1; j < atoms.size(); ++j) { |
433 |
+ |
a = atoms[i]->getGlobalIndex(); |
434 |
+ |
b = atoms[j]->getGlobalIndex(); |
435 |
+ |
exclude_.removePair(a, b); |
436 |
+ |
} |
437 |
+ |
} |
438 |
+ |
} |
439 |
+ |
|
440 |
|
} |
441 |
|
|
442 |
|
|
671 |
|
} |
672 |
|
|
673 |
|
//setup fortran simulation |
649 |
– |
//gloalExcludes and molMembershipArray should go away (They are never used) |
650 |
– |
//why the hell fortran need to know molecule? |
651 |
– |
//OOPSE = Object-Obfuscated Parallel Simulation Engine |
674 |
|
int nGlobalExcludes = 0; |
675 |
|
int* globalExcludes = NULL; |
676 |
|
int* excludeList = exclude_.getExcludeList(); |
858 |
|
} |
859 |
|
|
860 |
|
void SimInfo::setSnapshotManager(SnapshotManager* sman) { |
861 |
< |
//if (sman_ == sman_) { |
862 |
< |
// return; |
863 |
< |
//} |
864 |
< |
|
843 |
< |
//delete sman_; |
861 |
> |
if (sman_ == sman) { |
862 |
> |
return; |
863 |
> |
} |
864 |
> |
delete sman_; |
865 |
|
sman_ = sman; |
866 |
|
|
867 |
|
Molecule* mol; |