--- trunk/OOPSE/libmdtools/Molecule.cpp 2004/06/04 03:15:31 1234 +++ trunk/OOPSE/libmdtools/Molecule.cpp 2004/08/23 15:11:36 1452 @@ -53,6 +53,9 @@ void Molecule::initialize( molInit &theInit ){ Atom* cutoffAtom; vector::iterator iterAtom; int atomIndex; + GenericData* gdata; + ConsRbData* rbData; + RigidBody* oldRb; nAtoms = theInit.nAtoms; nMembers = nAtoms; @@ -70,8 +73,22 @@ void Molecule::initialize( molInit &theInit ){ myIntegrableObjects = theInit.myIntegrableObjects; - for (int i = 0; i < myRigidBodies.size(); i++) + for (int i = 0; i < myRigidBodies.size(); i++){ myRigidBodies[i]->calcRefCoords(); + //just a quick hack + + gdata = myRigidBodies[i]->getProperty("OldState"); + if(gdata != NULL){ + rbData = dynamic_cast(gdata); + if(rbData ==NULL) + cerr << "dynamic_cast to ConsRbData Error in Molecule::initialize()" << endl; + else{ + oldRb = rbData->getData(); + oldRb->calcRefCoords(); + } + }//end if(gata != NULL) + + }//end for(int i = 0; i < myRigidBodies.size(); i++) myCutoffGroups = theInit.myCutoffGroups; nCutoffGroups = myCutoffGroups.size();