ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-1.0/libmdtools/Thermo.hpp
Revision: 1415
Committed: Mon Jul 26 17:50:57 2004 UTC (19 years, 11 months ago) by gezelter
File size: 1507 byte(s)
Log Message:
Fixing required keyword annoyances

File Contents

# Content
1 #ifndef __THERMO_H__
2 #define __THERMO_H__
3
4 #include "Atom.hpp"
5 #include "SRI.hpp"
6 #include "SimInfo.hpp"
7 #include "randomSPRNG.hpp"
8
9 class Thermo{
10
11 public:
12
13 Thermo( SimInfo* the_info );
14 ~Thermo();
15
16 // note: all the following energies are in kcal/mol
17
18 double getKinetic(); // the total kinetic energy
19 double getPotential(); // the total potential energy
20 double getTotalE(); // gets the total energy
21
22 double getTemperature(); // gives the instant temp. in K
23
24 double getPressure(); // gives the instant pressure in atm;
25 double getPressureX(); // gives the instant pressure in atm;
26 double getPressureY(); // gives the instant pressure in atm;
27 double getPressureZ(); // gives the instant pressure in atm;
28
29 void getPressureTensor(double press[3][3]); // gives the pressure
30 // tensor in
31 // amu*fs^-2*Ang^-1
32 double getVolume(); // gives the volume in Ang^3
33
34 int getNDF(); // get the number of degrees of freedom in the system
35 int getNDFraw(); // get the number of raw degrees of freedom in the system
36 // i.e. don't subtract constraints or system COM.
37
38 void velocitize(); // set the temperature to the target temp in SimInfo
39 // NOTE: srand48 should be seeded before calling.
40 void getCOMVel(double vdrift[3]);
41 void getCOM(double COM[3]);
42 void removeCOMdrift();
43
44 private:
45 SimInfo* info;
46 gaussianSPRNG *gaussStream;
47 };
48 #endif