| 75 |
|
virtual void initForceField( int ljMixRule ) = 0; |
| 76 |
|
|
| 77 |
|
virtual void calcRcut( void ); |
| 78 |
+ |
virtual void setRcut( double LJrcut ); |
| 79 |
|
virtual void doForces( int calcPot, int calcStress ); |
| 80 |
|
|
| 81 |
< |
void setFortranForceLoop( void (*fsub) doForceLoopList ){ |
| 81 |
> |
void setFortranForceLoop( doForceLoop_TD fsub ){ |
| 82 |
|
fortranForceLoop = fsub; |
| 83 |
|
} |
| 84 |
|
|
| 85 |
|
protected: |
| 86 |
|
|
| 87 |
|
void initFortran( int ljMixPolicy, int useReactionField ); |
| 88 |
< |
void (*fortranForceLoop) doForceLoopList; |
| 88 |
> |
doForceLoop_TD fortranForceLoop; |
| 89 |
|
|
| 90 |
|
FILE *frcFile; |
| 91 |
|
SimInfo* entry_plug; |
| 176 |
|
double eamRcut; |
| 177 |
|
}; |
| 178 |
|
|
| 179 |
+ |
class WATER : public ForceFields{ |
| 180 |
+ |
|
| 181 |
+ |
public: |
| 182 |
+ |
WATER(); |
| 183 |
+ |
virtual ~WATER(); |
| 184 |
+ |
|
| 185 |
+ |
void readParams(); |
| 186 |
+ |
void cleanMe( void ); |
| 187 |
+ |
void initializeAtoms( int nAtoms, Atom** atomArray ); |
| 188 |
+ |
void initializeBonds( int nBonds, Bond** bondArray, |
| 189 |
+ |
bond_pair* the_bonds ); |
| 190 |
+ |
void initializeBends( int nBends, Bend** bendArray, |
| 191 |
+ |
bend_set* the_bends ); |
| 192 |
+ |
void initializeTorsions( int nTorsions, Torsion** torsionArray, |
| 193 |
+ |
torsion_set* the_torsions ); |
| 194 |
+ |
void initForceField( int ljMixRule ); |
| 195 |
+ |
|
| 196 |
+ |
private: |
| 197 |
+ |
|
| 198 |
+ |
void fastForward( char* stopText, char* searchOwner ); |
| 199 |
+ |
void sectionSearch( char* secHead, char* stopText, char* searchOwner ); |
| 200 |
+ |
|
| 201 |
+ |
}; |
| 202 |
+ |
|
| 203 |
|
#endif |
| 204 |
|
|