ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/Thermo.hpp
Revision: 454
Committed: Fri Apr 4 01:57:11 2003 UTC (21 years, 3 months ago) by gezelter
File size: 1045 byte(s)
Log Message:
changes for extended system code

File Contents

# User Rev Content
1 mmeineke 377 #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 Pa
25 gezelter 454
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 mmeineke 377
30     void velocitize(); // set the temperature to the target temp in SimInfo
31     // NOTE: srand48 should be seeded before calling.
32 chuckv 403 void getCOMVel(double vdrift[3]);
33 chuckv 401
34 mmeineke 377 private:
35     SimInfo* entry_plug;
36     gaussianSPRNG *gaussStream;
37    
38     };
39     #endif