OpenMD  2.5
Molecular Dynamics in the Open
OpenMD::Thermo Class Reference

#include <Thermo.hpp>

Public Member Functions

 Thermo (SimInfo *info)
 
RealType getTranslationalKinetic ()
 
RealType getRotationalKinetic ()
 
RealType getElectronicKinetic ()
 
RealType getKinetic ()
 
RealType getPotential ()
 
potVec getSelectionPotentials ()
 
RealType getTotalEnergy ()
 
RealType getTemperature ()
 
RealType getElectronicTemperature ()
 
RealType getNetCharge ()
 
RealType getChargeMomentum ()
 
RealType getPressure ()
 
Mat3x3d getPressureTensor ()
 gives the pressure tensor in amu*fs^-2*Ang^-1 More...
 
RealType getVolume ()
 
Vector3d getSystemDipole ()
 accumulate and return the simulation box dipole moment in C*m More...
 
Mat3x3d getSystemQuadrupole ()
 accumulate and return the simulation box dipole moment in debye Angstroms More...
 
Vector3d getHeatFlux ()
 
Vector3d getCom ()
 Returns the center of the mass of the whole system. More...
 
Vector3d getComVel ()
 Returns the velocity of center of mass of the whole system. More...
 
void getComAll (Vector3d &com, Vector3d &comVel)
 Returns the center of the mass and Center of Mass velocity of the whole system. More...
 
void getInertiaTensor (Mat3x3d &inertiaTensor, Vector3d &angularMomentum)
 Returns the inertia tensor and the total angular momentum for for the entire system. More...
 
Mat3x3d getBoundingBox ()
 Returns the Axis-aligned bounding box for the current system. More...
 
Vector3d getAngularMomentum ()
 Returns system angular momentum. More...
 
RealType getGyrationalVolume ()
 Returns volume of system as estimated by an ellipsoid defined by the radii of gyration. More...
 
void getGyrationalVolume (RealType &vol, RealType &detI)
 Overloaded version of gyrational volume that also returns det(I) so dV/dr can be calculated. More...
 
RealType getHullVolume ()
 
RealType getTaggedAtomPairDistance ()
 

Private Attributes

SimInfoinfo_
 

Detailed Description

Definition at line 51 of file Thermo.hpp.

Constructor & Destructor Documentation

◆ Thermo()

Member Function Documentation

◆ getAngularMomentum()

◆ getBoundingBox()

◆ getChargeMomentum()

◆ getCom()

◆ getComAll()

void OpenMD::Thermo::getComAll ( Vector3d com,
Vector3d comVel 
)

◆ getComVel()

◆ getElectronicKinetic()

◆ getElectronicTemperature()

◆ getGyrationalVolume() [1/2]

RealType OpenMD::Thermo::getGyrationalVolume ( )

Returns volume of system as estimated by an ellipsoid defined by the radii of gyration.

Returns the Volume of the system based on a ellipsoid with semi-axes based on the radius of gyration V=4/3*Pi*R_1*R_2*R_3 where R_i are related to the principle inertia moments R_i = sqrt(C*I_i/N), this reduces to V = 4/3*Pi*(C/N)^3/2*sqrt(det(I)). See S.E. Baltazar et. al. Comp. Mat. Sci. 37 (2006) 526-536.

Definition at line 988 of file Thermo.cpp.

References OpenMD::SquareMatrix3< Real >::determinant(), OpenMD::Snapshot::getGyrationalVolume(), OpenMD::Snapshot::hasGyrationalVolume, OpenMD::Constants::PI, and OpenMD::Snapshot::setGyrationalVolume().

Referenced by OpenMD::Stats::collectStats(), and Thermo().

◆ getGyrationalVolume() [2/2]

void OpenMD::Thermo::getGyrationalVolume ( RealType &  vol,
RealType &  detI 
)

◆ getHeatFlux()

◆ getHullVolume()

◆ getInertiaTensor()

void OpenMD::Thermo::getInertiaTensor ( Mat3x3d inertiaTensor,
Vector3d angularMomentum 
)

Returns the inertia tensor and the total angular momentum for for the entire system.

Return inertia tensor for entire system and angular momentum Vector.

Parameters
[out]inertiaTensorthe inertia tensor
[out]angularMomentumthe angular momentum vector

[ Ixx -Ixy -Ixz ] I =| -Iyx Iyy -Iyz | [ -Izx -Iyz Izz ]

Definition at line 804 of file Thermo.cpp.

References OpenMD::cross(), OpenMD::RectMatrix< Real, Row, Col >::getArrayPointer(), OpenMD::Vector< Real, Dim >::getArrayPointer(), OpenMD::Molecule::getCom(), OpenMD::Molecule::getComVel(), OpenMD::Snapshot::getCOMw(), OpenMD::Snapshot::getInertiaTensor(), OpenMD::Molecule::getMass(), OpenMD::Snapshot::hasCOMw, OpenMD::Snapshot::hasInertiaTensor, OpenMD::Snapshot::setCOMw(), and OpenMD::Snapshot::setInertiaTensor().

Referenced by OpenMD::Velocitizer::removeAngularDrift(), and Thermo().

◆ getKinetic()

RealType OpenMD::Thermo::getKinetic ( )

◆ getNetCharge()

◆ getPotential()

◆ getPressure()

◆ getPressureTensor()

◆ getRotationalKinetic()

◆ getSelectionPotentials()

potVec OpenMD::Thermo::getSelectionPotentials ( )

Definition at line 176 of file Thermo.cpp.

References OpenMD::Snapshot::getSelectionPotentials().

Referenced by OpenMD::Stats::collectStats(), and Thermo().

◆ getSystemDipole()

◆ getSystemQuadrupole()

◆ getTaggedAtomPairDistance()

◆ getTemperature()

◆ getTotalEnergy()

◆ getTranslationalKinetic()

◆ getVolume()

Member Data Documentation

◆ info_

SimInfo* OpenMD::Thermo::info_
private

Definition at line 125 of file Thermo.hpp.


The documentation for this class was generated from the following files: