ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/brains/Thermo.hpp
Revision: 1492
Committed: Fri Sep 24 16:27:58 2004 UTC (19 years, 9 months ago) by tim
File size: 1541 byte(s)
Log Message:
change the #include in source files

File Contents

# User Rev Content
1 gezelter 1490 #ifndef __THERMO_H__
2     #define __THERMO_H__
3    
4 tim 1492 #include "primitives/Atom.hpp"
5     #include "primitives/SRI.hpp"
6     #include "brains/SimInfo.hpp"
7     #include "math/randomSPRNG.hpp"
8 gezelter 1490
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