pmutt.statmech.lsr.LSR
- class pmutt.statmech.lsr.LSR(slope, intercept, reaction, surf_species=0.0, gas_species=0.0, notes=None)
Bases:
_ModelBase
Represents a linear scaling relationship
\(\Delta E^{AH_x} = \alpha \Delta E^{A} + \beta\)
\(E^{AH_{x}^*}=\Delta E^{AH_x} + E^* + E^{AH_{x(g)}}\)
where:
Symbol
Description
Units
\(\Delta E^{AH_x}\)
Binding energy of adsorbate, AHx, on interested surface.
kcal/mol
\(\Delta E^{A}\)
Binding energy of adsorbate, A, on interested surface.
kcal/mol
\(\alpha\)
Slope of LSR
-
\(\beta\)
Intercept of LSR
kcal/mol
\(E^*\)
Electronic energy of interested surface.
kcal/mol
\(E^{AH_{x(g)}}\)
Electronic energy of AHx in the gas phase.
kcal/mol
- reaction
Reaction to use to calculate reference binding energy. Binding energy calculated using
get_delta_E
and if that fails,get_delta_H
. If the binding energy is specified as a float (in kcal/mol), it will be converted to aReaction
made ofStatMech
objects- Type:
float or
Reaction
object
- surf_species
Surface species. If the surface’s energy is specified as a float (in kcal/mol), it will be converted to a
StatMech
object with a singleConstantMode
mode. Default is 0.- Type:
float or
StatMech
object, optional
- gas_species
Gas-phase species. If the gas’ energy is specified as a float (in kcal/mol), it will be converted to a
StatMech
object with a singleConstantMode
mode. Default is 0.- Type:
float or
StatMech
object, optional
Notes
If the LSR relationship represents the binding of an adsorbate (AHx) on surface (M2) relative to a reference surface (M1) (see equation below), you may still use this class.
\(\Delta E^{AH_x}_{M_2} = \alpha (\Delta E^{A}_{M_2} - \Delta E^{A}_{M_1}) + \Delta E^{AH_x}_{M_1}\)
The
reaction
inputted will represent the following stoichiometric reaction.\(*_{(M_1)} + A^*_{(M_2)} \leftrightarrow A^*_{(M_1)} + *_{(M_2)}\)
- __init__(slope, intercept, reaction, surf_species=0.0, gas_species=0.0, notes=None)
Methods
__init__
(slope, intercept, reaction[, ...])from_dict
(json_obj)Recreate an object from the JSON representation.
get_Cp
(units, **kwargs)Calculate the heat capacity (constant P)
get_CpoR
()Calculates the dimensionless heat capacity at constant pressure.
get_Cv
(units, **kwargs)Calculate the heat capacity (constant V)
get_CvoR
()Calculates the dimensionless heat capacity at constant volume.
get_F
(units[, T])Calculate the Helmholtz energy
get_FoRT
([T])Calculates the dimensionless Helmholtz energy using the LSR relationship
get_G
(units[, T])Calculate the Gibbs energy
get_GoRT
([T])Calculates the dimensionless Gibbs energy using the LSR relationship
get_H
(units[, T])Calculate the enthalpy
get_HoRT
([T])Calculates the dimensionless enthalpy using the LSR relationship
get_S
(units, **kwargs)Calculate the entropy
get_SoR
()Calculates the dimensionless entropy using the LSR relationship
get_U
(units[, T])Calculate the internal energy
get_UoRT
([T])Calculates the dimensionless internal energy using the LSR relationship
get_q
()Default method to calculate the partition coefficient.
to_dict
()Represents object as dictionary with JSON-accepted datatypes
Attributes
- classmethod from_dict(json_obj)
Recreate an object from the JSON representation.
- Parameters:
json_obj (dict) – JSON representation
- Returns:
LSR
- Return type:
LSR object
- property gas_species
- get_Cp(units, **kwargs)
Calculate the heat capacity (constant P)
- get_CpoR()
Calculates the dimensionless heat capacity at constant pressure.
\(\frac{C_V^{LSR}}{R}=0\)
- get_Cv(units, **kwargs)
Calculate the heat capacity (constant V)
- get_CvoR()
Calculates the dimensionless heat capacity at constant volume.
\(\frac{C_V^{LSR}}{R}=0\)
- get_F(units, T=298.15, **kwargs)
Calculate the Helmholtz energy
- get_FoRT(T=298.15, **kwargs)
Calculates the dimensionless Helmholtz energy using the LSR relationship
- get_G(units, T=298.15, **kwargs)
Calculate the Gibbs energy
- get_GoRT(T=298.15, **kwargs)
Calculates the dimensionless Gibbs energy using the LSR relationship
- get_H(units, T=298.15, **kwargs)
Calculate the enthalpy
- get_HoRT(T=298.15, **kwargs)
Calculates the dimensionless enthalpy using the LSR relationship
- get_S(units, **kwargs)
Calculate the entropy
- get_SoR()
Calculates the dimensionless entropy using the LSR relationship
- Returns:
SoR – Dimensionless entropy. Since LSR handles binding energies, always returns 0
- Return type:
- get_U(units, T=298.15, **kwargs)
Calculate the internal energy
- get_UoRT(T=298.15, **kwargs)
Calculates the dimensionless internal energy using the LSR relationship
- get_q()
Default method to calculate the partition coefficient.
- Returns:
q – Returns 1
- Return type:
- property reaction
- property surf_species