ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/Thermo.hpp
Revision: 468
Committed: Mon Apr 7 16:56:38 2003 UTC (21 years, 3 months ago) by gezelter
File size: 1059 byte(s)
Log Message:
Many fixes to add extended system

File Contents

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