34 |
|
|
35 |
|
#include "brains/SimInfo.hpp" |
36 |
|
#include "primitives/Molecule.hpp" |
37 |
+ |
#include "UseTheForce/doForces_interface.h" |
38 |
|
#include "UseTheForce/notifyCutoffs_interface.h" |
39 |
|
#include "utils/MemoryUtils.hpp" |
40 |
|
#include "utils/simError.h" |
406 |
|
|
407 |
|
setupFortranSim(); |
408 |
|
|
409 |
+ |
//setup fortran force field |
410 |
+ |
/** @deprecate */ |
411 |
+ |
int isError = 0; |
412 |
+ |
initFortranFF( &fInfo_.SIM_uses_RF , &isError ); |
413 |
+ |
if(isError){ |
414 |
+ |
sprintf( painCave.errMsg, |
415 |
+ |
"ForceField error: There was an error initializing the forceField in fortran.\n" ); |
416 |
+ |
painCave.isFatal = 1; |
417 |
+ |
simError(); |
418 |
+ |
} |
419 |
+ |
|
420 |
+ |
|
421 |
|
setupCutoff(); |
422 |
|
|
410 |
– |
//notify fortran whether reaction field is used or not. It is deprecated now |
411 |
– |
//int isError = 0; |
412 |
– |
//initFortranFF( &useReactionField, &isError ); |
413 |
– |
|
414 |
– |
//if(isError){ |
415 |
– |
// sprintf( painCave.errMsg, |
416 |
– |
// "SimCreator::initFortran() error: There was an error initializing the forceField in fortran.\n" ); |
417 |
– |
// painCave.isFatal = 1; |
418 |
– |
// simError(); |
419 |
– |
//} |
420 |
– |
|
423 |
|
calcNdf(); |
424 |
|
calcNdfRaw(); |
425 |
|
calcNdfTrans(); |
805 |
|
return properties_.getPropertyByName(propName); |
806 |
|
} |
807 |
|
|
808 |
+ |
void SimInfo::setSnapshotManager(SnapshotManager* sman) { |
809 |
+ |
sman_ = sman; |
810 |
+ |
|
811 |
+ |
Molecule* mol; |
812 |
+ |
RigidBody* rb; |
813 |
+ |
Atom* atom; |
814 |
+ |
SimInfo::MoleculeIterator mi; |
815 |
+ |
Molecule::RigidBodyIterator rbIter; |
816 |
+ |
Molecule::AtomIterator atomIter;; |
817 |
+ |
|
818 |
+ |
for (mol = beginMolecule(mi); mol != NULL; mol = nextMolecule(mi)) { |
819 |
+ |
|
820 |
+ |
for (atom = mol->beginAtom(atomIter); atom != NULL; atom = mol->nextAtom(atomIter)) { |
821 |
+ |
atom->setSnapshotManager(sman_); |
822 |
+ |
} |
823 |
+ |
|
824 |
+ |
for (rb = mol->beginRigidBody(rbIter); rb != NULL; rb = mol->nextRigidBody(rbIter)) { |
825 |
+ |
rb->setSnapshotManager(sman_); |
826 |
+ |
} |
827 |
+ |
} |
828 |
+ |
|
829 |
+ |
} |
830 |
|
|
831 |
|
std::ostream& operator <<(ostream& o, SimInfo& info) { |
832 |
|
|