--- trunk/OOPSE/libmdtools/ForceFields.hpp 2003/03/21 17:42:12 378 +++ trunk/OOPSE/libmdtools/ForceFields.hpp 2003/03/27 17:32:03 420 @@ -60,11 +60,21 @@ class ForceFields{ (public) virtual ~ForceFields(){} void setSimInfo( SimInfo* the_entry_plug ) { entry_plug = the_entry_plug; } - virtual void initializeAtoms( void ) = 0; - virtual void initializeBonds( bond_pair* the_bonds ) = 0; - virtual void initializeBends( bend_set* the_bends ) = 0; - virtual void initializeTorsions( torsion_set* the_torsions ) = 0; + + virtual void readParams( void ) = 0; + virtual void cleanMe( void ) = 0; + + + virtual void initializeAtoms( int nAtoms, Atom** atomArray ) = 0; + virtual void initializeBonds( int nBonds, Bond** bondArray, + bond_pair* the_bonds ) = 0; + virtual void initializeBends( int nBends, Bend** bendArray, + bend_set* the_bends ) = 0; + virtual void initializeTorsions( int nTorsions, Torsion** torsionArray, + torsion_set* the_torsions ) = 0; virtual void initForceField( int ljMixRule ) = 0; + + virtual void calcRcut( void ); virtual void doForces( int calcPot, int calcStress ); void setFortranForceLoop( void (*fsub) doForceLoopList ){ @@ -82,6 +92,7 @@ class ForceFields{ (public) int lineNum; char readLine[500]; char* eof_test; + double bigSigma; }; @@ -90,12 +101,18 @@ class TraPPEFF : public ForceFields{ (public) public: TraPPEFF(); virtual ~TraPPEFF(); + + void readParams(){} + void cleanMe( void ){} + + void initializeAtoms( int nAtoms, Atom** atomArray ) {} + void initializeBonds( int nBonds, Bond** bondArray, + bond_pair* the_bonds ) {} + void initializeBends( int nBends, Bend** bendArray, + bend_set* the_bends ) {} + void initializeTorsions( int nTorsions, Torsion** torsionArray, + torsion_set* the_torsions ) {} - void initializeAtoms( void ); - void initForceField( int ljMixRule ) {} - void initializeBonds( bond_pair* the_bonds ); - void initializeBends( bend_set* the_bends ); - void initializeTorsions( torsion_set* the_torsions ); }; @@ -105,11 +122,16 @@ class DipoleTestFF : public ForceFields{ (public) DipoleTestFF(); virtual ~DipoleTestFF(); - void initializeAtoms( void ); - void initForceField( int ljMixRule ) {} - void initializeBonds( bond_pair* the_bonds ); - void initializeBends( bend_set* the_bends ); - void initializeTorsions( torsion_set* the_torsions ); + void readParams(){} + void cleanMe( void ){} + + void initializeAtoms( int nAtoms, Atom** atomArray ) {} + void initializeBonds( int nBonds, Bond** bondArray, + bond_pair* the_bonds ) {} + void initializeBends( int nBends, Bend** bendArray, + bend_set* the_bends ) {} + void initializeTorsions( int nTorsions, Torsion** torsionArray, + torsion_set* the_torsions ) {} }; class TraPPE_ExFF : public ForceFields{ @@ -117,13 +139,18 @@ class TraPPE_ExFF : public ForceFields{ (public) public: TraPPE_ExFF(); virtual ~TraPPE_ExFF(); - - void initializeAtoms( void ); - void initForceField( int ljMixRule ); - void initializeBonds( bond_pair* the_bonds ); - void initializeBends( bend_set* the_bends ); - void initializeTorsions( torsion_set* the_torsions ); + void readParams(); + void cleanMe( void ); + + void initializeAtoms( int nAtoms, Atom** atomArray ); + void initializeBonds( int nBonds, Bond** bondArray, + bond_pair* the_bonds ); + void initializeBends( int nBends, Bend** bendArray, + bend_set* the_bends ); + void initializeTorsions( int nTorsions, Torsion** torsionArray, + torsion_set* the_torsions ); + private: void fastForward( char* stopText, char* searchOwner ); @@ -135,15 +162,21 @@ class LJ_FF : public ForceFields{ (public) LJ_FF(); virtual ~LJ_FF(); - void initializeAtoms( void ); - void initForceField( int ljMixRule ); - void initializeBonds( bond_pair* the_bonds ); - void initializeBends( bend_set* the_bends ); - void initializeTorsions( torsion_set* the_torsions ); + void readParams(); + void cleanMe( void ); + + void initializeAtoms( int nAtoms, Atom** atomArray ); + void initializeBonds( int nBonds, Bond** bondArray, + bond_pair* the_bonds ); + void initializeBends( int nBends, Bend** bendArray, + bend_set* the_bends ); + void initializeTorsions( int nTorsions, Torsion** torsionArray, + torsion_set* the_torsions ); private: void fastForward( char* stopText, char* searchOwner ); + }; #endif