rmgpy.statmech
The rmgpy.statmech
subpackage contains classes that represent various statistical mechanical models of molecular degrees of freedom. These models enable the computation of macroscopic parameters (e.g. thermodynamics, kinetics, etc.) from microscopic parameters.
A molecular system consisting of N atoms is described by 3N molecular degrees of freedom. Three of these modes involve translation of the system as a whole. Another three of these modes involve rotation of the system as a whole, unless the system is linear (e.g. diatomics), for which there are only two rotational modes. The remaining 3N − 6 (or 3N − 5 if linear) modes involve internal motion of the atoms within the system. Many of these modes are well-described as harmonic oscillations, while others are better modeled as torsional rotations around a bond within the system.
Molecular degrees of freedom are mathematically represented using the Schrodinger equation ĤΨ = EΨ. By solving the Schrodinger equation, we can determine the available energy states of the molecular system, which enables computation of macroscopic parameters. Depending on the temperature of interest, some modes (e.g. vibrations) require a quantum mechanical treatment, while others (e.g. translation, rotation) can be described using a classical solution.
rmgpy.statmech
Class | Description |
---|---|
IdealGasTranslation |
A model of three-dimensional translation of an ideal gas |
rmgpy.statmech
Class | Description |
---|---|
LinearRotor |
A model of two-dimensional rigid rotation of a linear molecule |
NonlinearRotor |
A model of three-dimensional rigid rotation of a nonlinear molecule |
KRotor |
A model of one-dimensional rigid rotation of a K-rotor |
SphericalTopRotor |
A model of three-dimensional rigid rotation of a spherical top molecule |
rmgpy.statmech
Class | Description |
---|---|
HarmonicOscillator |
A model of a set of one-dimensional harmonic oscillators |
rmgpy.statmech
Class | Description |
---|---|
HinderedRotor |
A model of a one-dimensional hindered rotation |
rmgpy.statmech.schrodinger
Class | Description |
---|---|
get_partition_function |
Calculate the partition function at a given temperature from energy levels and degeneracies |
get_heat_capacity |
Calculate the dimensionless heat capacity at a given temperature from energy levels and degeneracies |
get_enthalpy |
Calculate the enthalpy at a given temperature from energy levels and degeneracies |
get_entropy |
Calculate the entropy at a given temperature from energy levels and degeneracies |
get_sum_of_states |
Calculate the sum of states for a given energy domain from energy levels and degeneracies |
get_density_of_states |
Calculate the density of states for a given energy domain from energy levels and degeneracies |
rmgpy.statmech.schrodinger
Class | Description |
---|---|
convolve |
Return the convolution of two arrays |
convolve_bs |
Convolve a degree of freedom into a density or sum of states using the Beyer-Swinehart (BS) direct count algorithm |
convolve_bssr |
Convolve a degree of freedom into a density or sum of states using the Beyer-Swinehart-Stein-Rabinovitch (BSSR) direct count algorithm |
rmgpy.statmech
Class | Description |
---|---|
Conformer |
A model of a molecular conformation |
idealgastranslation linearrotor nonlinearrotor krotor sphericaltoprotor harmonicoscillator hinderedrotor schrodinger conformer