--- trunk/OOPSE/libmdtools/ForceFields.cpp 2003/07/16 21:30:56 626 +++ trunk/OOPSE/libmdtools/ForceFields.cpp 2003/12/22 21:27:04 892 @@ -3,13 +3,17 @@ using namespace std; using namespace std; -#include +#include #ifdef IS_MPI #include #endif // is_mpi +#ifdef PROFILE +#include "mdProfile.hpp" +#endif + #include "simError.h" #include "ForceFields.hpp" #include "Atom.hpp" @@ -26,7 +30,8 @@ void ForceFields::calcRcut( void ){ //calc rCut and rList - entry_plug->setRcut( 2.5 * bigSigma ); + entry_plug->setDefaultRcut( 2.5 * bigSigma ); + } void ForceFields::doForces( int calcPot, int calcStress ){ @@ -37,7 +42,7 @@ void ForceFields::doForces( int calcPot, int calcStres double* trq; double* A; double* u_l;; - DirectionalAtom* dAtom; + SimState* config; short int passedCalcPot = (short int)calcPot; short int passedCalcStress = (short int)calcStress; @@ -49,17 +54,25 @@ void ForceFields::doForces( int calcPot, int calcStres entry_plug->atoms[i]->zeroForces(); } +#ifdef PROFILE + startProfile(pro7); +#endif + for(i=0; in_mol; i++ ){ entry_plug->molecules[i].calcForces(); } +#ifdef PROFILE + endProfile( pro7 ); +#endif + + config = entry_plug->getConfiguration(); - - frc = Atom::getFrcArray(); - pos = Atom::getPosArray(); - trq = Atom::getTrqArray(); - A = Atom::getAmatArray(); - u_l = Atom::getUlArray(); + frc = config->getFrcArray(); + pos = config->getPosArray(); + trq = config->getTrqArray(); + A = config->getAmatArray(); + u_l = config->getUlArray(); isError = 0; entry_plug->lrPot = 0.0; @@ -68,6 +81,11 @@ void ForceFields::doForces( int calcPot, int calcStres entry_plug->tau[i] = 0.0; } + +#ifdef PROFILE + startProfile(pro8); +#endif + fortranForceLoop( pos, A, u_l, @@ -79,6 +97,11 @@ void ForceFields::doForces( int calcPot, int calcStres &passedCalcStress, &isError ); +#ifdef PROFILE + endProfile(pro8); +#endif + + if( isError ){ sprintf( painCave.errMsg, "Error returned from the fortran force calculation.\n" );