ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE_old/src/mdtools/libmdCode/ForceFields.hpp
(Generate patch)

Comparing trunk/OOPSE_old/src/mdtools/libmdCode/ForceFields.hpp (file contents):
Revision 291 by mmeineke, Wed Mar 5 20:35:54 2003 UTC vs.
Revision 294 by mmeineke, Thu Mar 6 17:04:09 2003 UTC

# Line 11 | Line 11 | class bond_pair{
11   #include "mpiForceField.h"
12   #endif
13  
14 + #include <fortranWrapDefines.hpp>
15 +
16   class bond_pair{
17   public:
18    bond_pair(){}
# Line 56 | Line 58 | class ForceFields{ (protected)
58    virtual void initializeTorsions( torsion_set* the_torsions ) = 0;
59    virtual void doForces( int calcPot ) = 0;
60  
61 +  void setFortranForceLoop( void (*fsub) doForceLoopList ){
62 +    fortranForceLoop = fsub;
63 +  }
64 +
65   protected:
66    
67 +  void (*fortranForceLoop) doForceLoopList;
68 +
69    FILE *frcFile;
70    SimInfo* entry_plug;
71    
# Line 106 | Line 114 | class TraPPE_ExFF : public ForceFields{ (public)
114    void initializeTorsions( torsion_set* the_torsions );
115    void doForces( int );
116  
109  void setTPEfortran( void (*fortranSub)( double* positionArray,
110                                          double* forceArray,
111                                          double* potentialEnergy,
112                                          double* tau,
113                                          short int* doPotentialCalc,
114                                          int* isError ) ){
115    doTPEfortran = fortranSub;
116  }
117
117   private:
118    
119    void fastForward( char* stopText, char* searchOwner );
121  
122  // set our sister fortran module's function to be our own.
123  void wrapMe( void );
124  void (*doTPEfortran)( double* positionArray,
125                        double* forceArray,
126                        double* potentialEnergy,
127                        double* tau,
128                        short int* doPotentialCalc,
129                        int* isError );
120    void initFortran( void );
121  
122   };
# Line 141 | Line 131 | class LJ_FF : public ForceFields{ (public)
131    void initializeBonds( bond_pair* the_bonds );
132    void initializeBends( bend_set* the_bends );
133    void initializeTorsions( torsion_set* the_torsions );
134 <  void setLJfortran( void (*fortranSub)( double* positionArray,
145 <                                         double* forceArray,
146 <                                         double* potentialEnergy,
147 <                                         double* tau,
148 <                                         short int* doPotentialCalc,
149 <                                         int* isError ) ){
150 <    doLJfortran = fortranSub;
151 <  }
134 >
135    void doForces( int );
136  
137   private:
138  
139    void fastForward( char* stopText, char* searchOwner );
140 <  
158 <  // set our sister fortran module's function to be our own.
159 <  void wrapMe( void );
160 <  void (*doLJfortran)( double* positionArray,
161 <                       double* forceArray,
162 <                       double* potentialEnergy,
163 <                       double* tau,
164 <                       short int* doPotentialCalc,
165 <                       int* isError );
140 >
141    void initFortran( void );
142   };
143  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines