ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/Integrator.hpp
Revision: 540
Committed: Fri May 30 19:07:45 2003 UTC (21 years, 1 month ago) by mmeineke
File size: 1544 byte(s)
Log Message:
changed how NVT is now derived from Integrator

File Contents

# Content
1 #ifndef _INTEGRATOR_H_
2 #define _INTEGRATOR_H_
3
4 #include "Atom.hpp"
5 #include "SRI.hpp"
6 #include "AbstractClasses.hpp"
7 #include "SimInfo.hpp"
8 #include "ForceFields.hpp"
9 #include "Thermo.hpp"
10 #include "ReadWrite.hpp"
11
12 class Integrator : public BaseIntegrator {
13
14 public:
15 Symplectic( SimInfo &theInfo, ForceFields* the_ff );
16 virtual ~Symplectic();
17 void integrate( void );
18
19
20 protected:
21
22
23 virtual void integrateStep( int calcPot, int calcStress );
24 virtual void moveA( void );
25 virtual void moveB( void );
26 virtual void constrainA( void );
27 virtual void constrainB( void );
28
29
30 void checkConstraints( void );
31 void rotate( int axes1, int axes2, double angle, double j[3],
32 double A[3][3] );
33
34
35 ForceFields* myFF;
36
37 SimInfo *info; // all the info we'll ever need
38 int nAtoms; /* the number of atoms */
39 Atom **atoms; /* array of atom pointers */
40 Molecule* molecules;
41 int nMols;
42
43 int isConstrained; /*boolean to know whether the systems contains
44 constraints. */
45 int nConstrained; /*counter for number of constraints */
46 int *constrainedI; /* the i of a constraint pair */
47 int *constrainedJ; /* the j of a constraint pair */
48 double *constrainedDsqr; /* the square of the constraint distance */
49 short isFirst; /*boolean for the first time integrate is called */
50
51 double dt;
52
53
54 Thermo *tStats;
55 StatWriter* statOut;
56 DumpWriter* dumpOut;
57
58 };
59
60
61 class NVT : public Integrator{
62
63 NVT ( void );
64 virtual ~NVT();
65
66 protected:
67 virtual moveA( void );
68 virtual moveB( void );
69
70 };
71
72
73
74
75 #endif