--- trunk/OOPSE/libmdtools/Thermo.hpp 2003/03/25 22:54:16 401 +++ trunk/OOPSE/libmdtools/Thermo.hpp 2003/09/09 20:35:25 755 @@ -3,7 +3,6 @@ #include "Atom.hpp" #include "SRI.hpp" -#include "Integrator.hpp" #include "SimInfo.hpp" #include "randomSPRNG.hpp" @@ -11,7 +10,7 @@ class Thermo{ (public) public: - Thermo( SimInfo* the_entry_plug ); + Thermo( SimInfo* the_info ); ~Thermo(); // note: all the following energies are in kcal/mol @@ -21,14 +20,28 @@ class Thermo{ (public) double getTotalE(); // gets the total energy double getTemperature(); // gives the instant temp. in K - double getPressure(); // gives the instant pressure in Pa + + double getPressure(); // gives the instant pressure in atm; + double getPressureX(); // gives the instant pressure in atm; + double getPressureY(); // gives the instant pressure in atm; + double getPressureZ(); // gives the instant pressure in atm; + + void getPressureTensor(double press[3][3]); // gives the pressure + // tensor in + // amu*fs^-2*Ang^-1 + double getVolume(); // gives the volume in Ang^3 + double getEnthalpy(); // gives the enthalpy in kcal/mol + + int getNDF(); // get the number of degrees of freedom in the system + int getNDFraw(); // get the number of raw degrees of freedom in the system + // i.e. don't subtract constraints or system COM. void velocitize(); // set the temperature to the target temp in SimInfo // NOTE: srand48 should be seeded before calling. - double* getCOMVel(); + void getCOMVel(double vdrift[3]); private: - SimInfo* entry_plug; + SimInfo* info; gaussianSPRNG *gaussStream; };