pmutt.statmech.vib.EinsteinVib
- class pmutt.statmech.vib.EinsteinVib(einstein_temperature, interaction_energy=0.0)
Bases:
_ModelBase
Einstein model of a crystal. Equations used sourced from
Sandler, S. I. An Introduction to Applied Statistical Thermodynamics; John Wiley & Sons, 2010.
- interaction_energy
Interaction energy (\(u\)) per atom in eV. Default is 0 eV
- Type:
float, optional
- __init__(einstein_temperature, interaction_energy=0.0)
Methods
__init__
(einstein_temperature[, ...])from_dict
(json_obj)Recreate an object from the JSON representation.
get_Cp
(units, **kwargs)Calculate the heat capacity (constant P)
get_CpoR
(T)Calculates the dimensionless heat capacity at constant pressure
get_Cv
(units, **kwargs)Calculate the heat capacity (constant V)
get_CvoR
(T)Calculates the dimensionless heat capacity at constant volume
get_F
(units[, T])Calculate the Helmholtz energy
get_FoRT
(T)Calculates the dimensionless Helmholtz energy
get_G
(units[, T])Calculate the Gibbs energy
get_GoRT
(T)Calculates the dimensionless Gibbs energy
get_H
(units[, T])Calculate the enthalpy
get_HoRT
(T)Calculates the dimensionless enthalpy
get_S
(units, **kwargs)Calculate the entropy
get_SoR
(T)Calculates the dimensionless entropy
get_U
(units[, T])Calculate the internal energy
get_UoRT
(T)Calculates the dimensionless internal energy
get_ZPE
()Calculates the zero point energy
get_q
(T)Calculates the partition function
to_dict
()Represents object as dictionary with JSON-accepted datatypes
- classmethod from_dict(json_obj)
Recreate an object from the JSON representation.
- Parameters:
json_obj (dict) – JSON representation
- Returns:
Obj
- Return type:
Appropriate object
- get_Cp(units, **kwargs)
Calculate the heat capacity (constant P)
- get_CpoR(T)
Calculates the dimensionless heat capacity at constant pressure
\(\frac{C_P^{vib}}{R}=\frac{C_V^{vib}}{R}=3\bigg(\frac{ \Theta_E}{T}\bigg)^2\frac{\exp(-\frac{\Theta_E}{T})}{\big(1- \exp(\frac{-\Theta_E}{T})\big)^2}\)
- get_Cv(units, **kwargs)
Calculate the heat capacity (constant V)
- get_CvoR(T)
Calculates the dimensionless heat capacity at constant volume
\(\frac{C_V^{vib}}{R}=3\bigg(\frac{\Theta_E}{T}\bigg)^2 \frac{\exp(-\frac{\Theta_E}{T})}{\big(1-\exp(\frac{- \Theta_E}{T})\big)^2}\)
- get_F(units, T=298.15, **kwargs)
Calculate the Helmholtz energy
- get_FoRT(T)
Calculates the dimensionless Helmholtz energy
\(\frac{A^{vib}}{RT}=\frac{U^{vib}}{RT}-\frac{S^{vib}}{R}\)
- get_G(units, T=298.15, **kwargs)
Calculate the Gibbs energy
- get_GoRT(T)
Calculates the dimensionless Gibbs energy
\(\frac{G^{vib}}{RT}=\frac{H^{vib}}{RT}-\frac{S^{vib}}{R}\)
- get_H(units, T=298.15, **kwargs)
Calculate the enthalpy
- get_HoRT(T)
Calculates the dimensionless enthalpy
\(\frac{H^{vib}}{RT}=\frac{U^{vib}}{RT}=\frac{N_A u^0_E}{k_BT} +3\frac{\Theta_E}{T}\bigg(\frac{\exp(-\frac{\Theta_E}{T})}{1- \exp(-\frac{\Theta_E}{T})}\bigg)\)
- get_S(units, **kwargs)
Calculate the entropy
- get_SoR(T)
Calculates the dimensionless entropy
\(\frac{S^{vib}}{R}=3\bigg(\frac{\Theta_E}{T}\frac{\exp\big( \frac{-\Theta_E}{T}\big)}{1-\exp\big(-\frac{\Theta_E}{T}\big)} \bigg)-\ln\bigg(1-\exp\big(\frac{-\Theta_E}{T}\big)\bigg)\)
- get_U(units, T=298.15, **kwargs)
Calculate the internal energy
- get_UoRT(T)
Calculates the dimensionless internal energy
\(\frac{U^{vib}}{RT}=\frac{u^0_E}{k_BT}+3\frac{\Theta_E}{T} \bigg(\frac{\exp(-\frac{\Theta_E}{T})}{1-\exp(-\frac{\Theta_E} {T})}\bigg)\)
- get_ZPE()
Calculates the zero point energy
\(u^0_E=u+\frac{3}{2}\Theta_E k_B\)
- Returns:
zpe – Zero point energy in eV
- Return type:
- get_q(T)
Calculates the partition function
\(q^{vib}=\exp\bigg({\frac{-u}{k_BT}}\bigg)\bigg(\frac{ \exp(-\frac{\Theta_E}{2T})}{1-\exp(\frac{-\Theta_E}{T})}\bigg)\)