pmutt.reaction.ChemkinReaction

class pmutt.reaction.ChemkinReaction(beta=1.0, is_adsorption=False, sticking_coeff=0.5, **kwargs)

Bases: Reaction

Chemkin reaction. Has additional attributes to support input and output

beta

Power to raise the temperature in the rate expression. Default is 1

Type:

float, optional

is_adsorption

If True, the reaction represents an adsorption. Default is False

Type:

bool, optional

sticking_coeff

Sticking coefficient. Only relevant if is_adsorption is True. Default is 0.5

Type:

float, optional

gas_phase

True if the reaction has only gas-phase species. This attribute is determined based on the reactants and products

Type:

bool

kwargs

Keyword arguments used to initialize the reactants, transition state and products

Type:

keyword arguments

__init__(beta=1.0, is_adsorption=False, sticking_coeff=0.5, **kwargs)

Methods

__init__([beta, is_adsorption, sticking_coeff])

check_element_balance()

Checks the reactants, products and transition state elemental composition

from_dict(json_obj)

Recreate an object from the JSON representation.

from_string(reaction_str, species[, ...])

Create a reaction object using the reaction string

get_A([sden_operation, include_entropy, T])

Calculates the preexponential factor in the Chemkin format

get_Cp_act(units[, rev])

Gets change in heat capacity (constant P) between reactants/products and the transition state

get_Cp_state(state, units, **kwargs)

Gets the heat capacity at constant pressure at a state

get_CpoR_act([rev])

Gets change in dimensionless heat capacity between reactants/products and the transition state

get_CpoR_state(state, **kwargs)

Gets dimensionless heat capacity at constant pressure at a state

get_Cv_act(units[, rev])

Gets change in heat capacity (constant V) between reactants/products and the transition state

get_Cv_state(state, units, **kwargs)

Gets the heat capacity at constant volume at a state

get_CvoR_act([rev])

Gets change in dimensionless heat capacity (constant V) between reactants/products and the transition state

get_CvoR_state(state, **kwargs)

Gets dimensionless heat capacity at constant volume at a state

get_E_act(units, T[, rev, del_m])

Gets act energy between reactants (or products) and transition state

get_E_state(state, units[, T, include_ZPE])

Gets the electronic energy at a state

get_EoRT_act([rev, del_m])

Gets dimensionless Arrhenius activation energy between reactants (or products) and transition state

get_EoRT_state(state[, include_ZPE])

Gets dimensionless electronic energy at a state

get_F_act(units, T[, rev])

Gets change in Helmholtz energy between reactants/products and the transition state

get_F_state(state, units, T, **kwargs)

Gets the Helholtz energy at a state

get_FoRT_act([rev])

Gets change in dimensionless Helmholtz energy between reactants/products and transition state

get_FoRT_state(state, **kwargs)

Gets dimensionless Helmholtz energy at a state

get_G_act(units, T[, rev])

Gets change in Gibbs energy between reactants/products and the transition state

get_G_state(state, units, T, **kwargs)

Gets the Gibbs energy at a state

get_GoRT_act([rev, act])

Calculates the dimensionless Gibbs energy.

get_GoRT_state(state, **kwargs)

Gets dimensionless Gibbs energy at a state

get_H_act(units, T[, rev])

Gets change in enthalpy between reactants/products and the transition state

get_H_state(state, units, T, **kwargs)

Gets the enthalpy at a state

get_HoRT_act([rev])

Calculates the dimensionless enthalpy.

get_HoRT_state(state, **kwargs)

Gets dimensionless enthalpy at a state

get_Keq([rev, act])

Gets equilibrium constant between reactants and products

get_S_act(units[, rev])

Gets change in entropy between reactants/products and the transition state

get_S_state(state, units, **kwargs)

Gets the entropy at a state

get_SoR_act([rev])

Gets change in dimensionless entropy between reactants/products and the transition state

get_SoR_state(state, **kwargs)

Gets dimensionless entropy at a state

get_U_act(units, T[, rev])

Gets change in internal energy between reactants/products and the transition state

get_U_state(state, units, T, **kwargs)

Gets the internal energy at a state

get_UoRT_act([rev])

Gets change in dimensionless internal energy between reactants/products and the transition state

get_UoRT_state(state, **kwargs)

Gets dimensionless internal energy at a state

get_delta_Cp(units[, rev, act])

Gets change in heat capacity (constant P) between reactants and products

get_delta_CpoR([rev, act])

Gets change in dimensionless heat capacity between reactants and products

get_delta_Cv(units[, rev, act])

Gets change in heat capacity (constant V) between reactants and products

get_delta_CvoR([rev, act])

Gets change in dimensionless heat capacity (constant V) between reactants and products

get_delta_E(units, T[, rev, act])

Gets change in electronic energy between reactants and products

get_delta_EoRT([rev, act])

Gets change in dimensionless electronic energy between reactants and products

get_delta_F(units, T[, rev, act])

Gets change in Helmholtz energy between reactants and products

get_delta_FoRT([rev, act])

Gets change in dimensionless Helmholtz energy between reactants and products

get_delta_G(units, T[, rev, act])

Gets change in Gibbs energy between reactants and products

get_delta_GoRT([rev, act])

Gets change in dimensionless Gibbs energy between reactants and products

get_delta_H(units, T[, rev, act])

Gets change in enthalpy between reactants and products

get_delta_HoRT([rev, act])

Gets change in dimensionless enthalpy between reactants and products

get_delta_S(units[, rev, act])

Gets change in entropy between reactants and products

get_delta_SoR([rev, act])

Gets change in dimensionless entropy between reactants and products

get_delta_U(units, T[, rev, act])

Gets change in internal energy between reactants and products

get_delta_UoRT([rev, act])

Gets change in dimensionless internal energy between reactants and products

get_delta_q([rev, act])

Gets change in partition function between reactants and products

get_delta_quantity(initial_state, ...)

Helper method to calculate the change in thermodynamic quantity between states

get_q_act([rev, include_ZPE])

Gets change in partition function between reactants/products and the transition state

get_q_state(state, **kwargs)

Gets partition function at a state

get_species([include_TS, key])

Returns the unique species included in the reaction.

get_state_quantity(state, method_name, **kwargs)

Helper method to calculate the thermodynamic quantity of the state

to_dict()

Represents object as dictionary with JSON-accepted datatypes

to_string([species_delimiter, ...])

Writes the Reaction object as a stoichiometric reaction

Attributes

products

products_stoich

reactants

reactants_stoich

transition_state

transition_state_stoich

check_element_balance()

Checks the reactants, products and transition state elemental composition

Raises:

ValueError – Raised if the reactants, products and/or transition state element composition does not agree.

classmethod from_dict(json_obj)

Recreate an object from the JSON representation.

Parameters:

json_obj (dict) – JSON representation

Returns:

Reaction

Return type:

Reaction object

classmethod from_string(reaction_str, species, species_delimiter='+', reaction_delimiter='=', notes=None, beta=1, is_adsorption=False, sticking_coeff=0.5)

Create a reaction object using the reaction string

Parameters:
  • reaction_str (str) – Reaction string.

  • species (dict) – Dictionary using the names as keys. If you have a list of species, use pmutt.pmutt_list_to_dict to make a dict.

  • species_delimiter (str, optional) – Delimiter that separate species. Leading and trailing spaces will be trimmed. Default is ‘+’

  • reaction_delimiter (str, optional) – Delimiter that separate states of the reaction. Leading and trailing spaces will be trimmed. Default is ‘=’

  • notes (str or dict, optional) – Other notes such as the source of the reaction. Default is None

  • beta (float, optional) – Power to raise the temperature in the rate expression. Default is 1

  • is_adsorption (bool, optional) – If True, the reaction represents an adsorption. Default is False

  • sticking_coeff (float, optional) – Sticking coefficient. Only relevant if is_adsorption is True. Default is 0.5

  • gas_phase (bool) – True if the reaction has only gas-phase species. This attribute is determined based on the reactants and products

Returns:

ChemkinReaction

Return type:

ChemkinReaction object

get_A(sden_operation='sum', include_entropy=True, T=298.15, **kwargs)

Calculates the preexponential factor in the Chemkin format

Parameters:
  • sden_operation (str, optional) – Site density operation to use. Default is ‘sum’

  • include_entropy (bool, optional) – If True, includes the act entropy. Default is True

  • T (float, optional) – Temperature in K. Default is 298.15 K

  • kwargs (keyword arguments) – Parameters required to calculate pre-exponential factor

get_Cp_act(units, rev=False, **kwargs)

Gets change in heat capacity (constant P) between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units.

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_Cp – Change in heat capacity between reactants/products and the transition state

Return type:

float

get_Cp_state(state, units, **kwargs)

Gets the heat capacity at constant pressure at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units.

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity at constant pressure. See class docstring to see how to pass specific parameters to different species.

Returns:

Cp – Heat capacity at constant pressure of the reaction state

Return type:

float

get_CpoR_act(rev=False, **kwargs)

Gets change in dimensionless heat capacity between reactants/products and the transition state

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

CvoR_act – Change in heat capacity between reactants/products and the transition state

Return type:

float

get_CpoR_state(state, **kwargs)

Gets dimensionless heat capacity at constant pressure at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless heat capacity at constant pressure. See class docstring to see how to pass specific parameters to different species.

Returns:

CpoR – Dimensionless heat capacity at constant pressure of the reaction state

Return type:

float

get_Cv_act(units, rev=False, **kwargs)

Gets change in heat capacity (constant V) between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units.

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

Cv_act – Change in heat capacity between reactants and products

Return type:

float

get_Cv_state(state, units, **kwargs)

Gets the heat capacity at constant volume at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units.

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity at constant volume. See class docstring to see how to pass specific parameters to different species.

Returns:

Cv – Heat capacity at constant volume of the reaction state

Return type:

float

get_CvoR_act(rev=False, **kwargs)

Gets change in dimensionless heat capacity (constant V) between reactants/products and the transition state

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

CvoR_act – Change in heat capacity between reactants/products and transition state

Return type:

float

get_CvoR_state(state, **kwargs)

Gets dimensionless heat capacity at constant volume at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless heat capacity at constant volume. See class docstring to see how to pass specific parameters to different species.

Returns:

CvoR – Dimensionless heat capacity at constant volume of the reaction state

Return type:

float

get_E_act(units, T, rev=False, del_m=1, **kwargs)

Gets act energy between reactants (or products) and transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • del_m (int, optional) – Change in molecularity of gas-phase species in the reaction. Condensed-phase and unimolecular gas-phase reactions should have a value of 0. Bimolecular gas-phase reactions should have a value of -1. If None specified, m will be calculated (assuming all species in the initial state and transition state are gas phase). To get the transition-state enthalpy of activation, set to 1 (default).

  • kwargs (keyword arguments) – Parameters required to calculate act energy. See class docstring to see how to pass specific parameters to different species.

Returns:

E_act – act energy between reactants (or products) and transition state

Return type:

float

get_E_state(state, units, T=298.15, include_ZPE=False, **kwargs)

Gets the electronic energy at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • include_ZPE (bool, optional) – If True, includes the zero point energy. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate electronic energy. See class docstring to see how to pass specific parameters to different species.

Returns:

E – Electronic energy of the reaction state

Return type:

float

get_EoRT_act(rev=False, del_m=1, **kwargs)

Gets dimensionless Arrhenius activation energy between reactants (or products) and transition state

If the transition state method is used, the enthalpy of activation is converted to activation energy using the following:

\(\frac {E_a}{RT} = \frac {\Delta H^{TS}}{RT} + (1-\Delta n^{TS})\)

where \(\Delta n^{TS}\) is the change in the number of molecules on forming the transition state.

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • del_m (int, optional) – Change in molecularity of gas-phase species in the reaction. Condensed-phase and unimolecular gas-phase reactions should have a value of 0. Bimolecular gas-phase reactions should have a value of -1. If None specified, m will be calculated (assuming all species in the initial state and transition state are gas phase). To get the transition-state enthalpy of activation, set to 1 (default).

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless act energy

Returns:

EoRT_act – Dimensionless act energy between reactants (or products) and transition state

Return type:

float

get_EoRT_state(state, include_ZPE=False, **kwargs)

Gets dimensionless electronic energy at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • include_ZPE (bool, optional) – If True, includes the zero point energy. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless electronic energy. See class docstring to see how to pass specific parameters to different species.

Returns:

EoRT – Dimensionless electronic energy of the reaction state.

Return type:

float

get_F_act(units, T, rev=False, **kwargs)

Gets change in Helmholtz energy between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Helmholtz energy. See class docstring to see how to pass specific parameters to different species.

Returns:

F_act – Change in Helmholtz energy between reactants/products and the transition state

Return type:

float

get_F_state(state, units, T, **kwargs)

Gets the Helholtz energy at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • kwargs (keyword arguments) – Parameters required to calculate Helholtz energy. See class docstring to see how to pass specific parameters to different species.

Returns:

F – Helmholtz energy of the reaction state

Return type:

float

get_FoRT_act(rev=False, **kwargs)

Gets change in dimensionless Helmholtz energy between reactants/products and transition state

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Helmholtz energy. See class docstring to see how to pass specific parameters to different species.

Returns:

FoRT_act – Change in Helmholtz energy between reactants/products and the transition state

Return type:

float

get_FoRT_state(state, **kwargs)

Gets dimensionless Helmholtz energy at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless Helmholtz energy. See class docstring to see how to pass specific parameters to different species.

Returns:

FoRT – Dimensionless Helmoltz energy of the reaction state

Return type:

float

get_G_act(units, T, rev=False, **kwargs)

Gets change in Gibbs energy between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

G_act – Change in Gibbs energy between reactants/products and the transition state

Return type:

float

get_G_state(state, units, T, **kwargs)

Gets the Gibbs energy at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • kwargs (keyword arguments) – Parameters required to calculate Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

G – Gibbs energy of the reaction state

Return type:

float

get_GoRT_act(rev=False, act=False, **kwargs)

Calculates the dimensionless Gibbs energy. If there is no transition state species, calculates the delta dimensionless Gibbs energy

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

GoRT_act – Change in Gibbs energy between reactants/products and the transition state

Return type:

float

get_GoRT_state(state, **kwargs)

Gets dimensionless Gibbs energy at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

GoRT – Dimensionless Gibbs energy of the reaction state

Return type:

float

get_H_act(units, T, rev=False, **kwargs)

Gets change in enthalpy between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate enthalpy. See class docstring to see how to pass specific parameters to different species.

Returns:

H_act – Change in enthalpy between reactants/products and the transition state

Return type:

float

get_H_state(state, units, T, **kwargs)

Gets the enthalpy at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • kwargs (keyword arguments) – Parameters required to calculate enthalpy. See class docstring to see how to pass specific parameters to different species.

Returns:

H – Enthalpy of the reaction state

Return type:

float

get_HoRT_act(rev=False, **kwargs)

Calculates the dimensionless enthalpy. If there is no transition state species, calculates the delta dimensionless Gibbs energy

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

HoRT_act – Change in Gibbs energy between reactants/products and the transition state

Return type:

float

get_HoRT_state(state, **kwargs)

Gets dimensionless enthalpy at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless enthalpy. See class docstring to see how to pass specific parameters to different species.

Returns:

HoRT – Dimensionless heat capacity at constant pressure of the reaction state.

Return type:

float

get_Keq(rev=False, act=False, **kwargs)

Gets equilibrium constant between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate equilibrium constant. See class docstring to see how to pass specific parameters to different species.

Returns:

Keq – Equilibrium constant between reactants and products

Return type:

float

get_S_act(units, rev=False, **kwargs)

Gets change in entropy between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units.

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate entropy. See class docstring to see how to pass specific parameters to different species.

Returns:

S_act – Change in entropy between reactants/products and the transition state

Return type:

float

get_S_state(state, units, **kwargs)

Gets the entropy at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units.

  • kwargs (keyword arguments) – Parameters required to calculate entropy. See class docstring to see how to pass specific parameters to different species.

Returns:

S – Entropy of the reaction state

Return type:

float

get_SoR_act(rev=False, **kwargs)

Gets change in dimensionless entropy between reactants/products and the transition state

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate entropy. See class docstring to see how to pass specific parameters to different species.

Returns:

SoR_act – Change in entropy between reactants/products and the transition state

Return type:

float

get_SoR_state(state, **kwargs)

Gets dimensionless entropy at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless entropy. See class docstring to see how to pass specific parameters to different species.

Returns:

SoR – Dimensionless entropy of the reaction state

Return type:

float

get_U_act(units, T, rev=False, **kwargs)

Gets change in internal energy between reactants/products and the transition state

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate internal energy. See class docstring to see how to pass specific parameters to different species.

Returns:

U_act – Change in internal energy between reactants/products and the transition state

Return type:

float

get_U_state(state, units, T, **kwargs)

Gets the internal energy at a state

Parameters:
  • state (str) –

    State to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • kwargs (keyword arguments) – Parameters required to calculate internal energy. See class docstring to see how to pass specific parameters to different species.

Returns:

U – Internal energy of the reaction state

Return type:

float

get_UoRT_act(rev=False, **kwargs)

Gets change in dimensionless internal energy between reactants/products and the transition state

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate internal energy. See class docstring to see how to pass specific parameters to different species.

Returns:

UoRT_act – Change in internal energy between reactants/products and the transition state

Return type:

float

get_UoRT_state(state, **kwargs)

Gets dimensionless internal energy at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’ (same as transition state)

  • kwargs (keyword arguments) – Parameters required to calculate dimensionless internal energy. See class docstring to see how to pass specific parameters to different species.

Returns:

UoRT – Dimensionless internal energy of the reaction state.

Return type:

float

get_delta_Cp(units, rev=False, act=False, **kwargs)

Gets change in heat capacity (constant P) between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units.

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_Cp – Change in heat capacity between reactants and products

Return type:

float

get_delta_CpoR(rev=False, act=False, **kwargs)

Gets change in dimensionless heat capacity between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_CvoR – Change in heat capacity between reactants and products

Return type:

float

get_delta_Cv(units, rev=False, act=False, **kwargs)

Gets change in heat capacity (constant V) between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units.

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_Cv – Change in heat capacity between reactants and products

Return type:

float

get_delta_CvoR(rev=False, act=False, **kwargs)

Gets change in dimensionless heat capacity (constant V) between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate heat capacity. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_CvoR – Change in heat capacity between reactants and products

Return type:

float

get_delta_E(units, T, rev=False, act=False, **kwargs)

Gets change in electronic energy between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate electronic energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_E – Change in electronic energy between reactants and products

Return type:

float

get_delta_EoRT(rev=False, act=False, **kwargs)

Gets change in dimensionless electronic energy between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate electronic energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_EoRT – Change in electronic energy between reactants and products

Return type:

float

get_delta_F(units, T, rev=False, act=False, **kwargs)

Gets change in Helmholtz energy between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Helmholtz energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_F – Change in Helmholtz energy between reactants and products

Return type:

float

get_delta_FoRT(rev=False, act=False, **kwargs)

Gets change in dimensionless Helmholtz energy between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Helmholtz energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_FoRT – Change in Helmholtz energy between reactants and products

Return type:

float

get_delta_G(units, T, rev=False, act=False, **kwargs)

Gets change in Gibbs energy between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_G – Change in Gibbs energy between reactants and products

Return type:

float

get_delta_GoRT(rev=False, act=False, **kwargs)

Gets change in dimensionless Gibbs energy between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate Gibbs energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_GoRT – Change in Gibbs energy between reactants and products

Return type:

float

get_delta_H(units, T, rev=False, act=False, **kwargs)

Gets change in enthalpy between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate enthalpy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_H – Change in enthalpy between reactants and products

Return type:

float

get_delta_HoRT(rev=False, act=False, **kwargs)

Gets change in dimensionless enthalpy between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate enthalpy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_HoRT – Change in enthalpy between reactants and products

Return type:

float

get_delta_S(units, rev=False, act=False, **kwargs)

Gets change in entropy between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units.

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate entropy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_S – Change in entropy between reactants and products

Return type:

float

get_delta_SoR(rev=False, act=False, **kwargs)

Gets change in dimensionless entropy between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate entropy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_SoR – Change in entropy between reactants and products

Return type:

float

get_delta_U(units, T, rev=False, act=False, **kwargs)

Gets change in internal energy between reactants and products

Parameters:
  • units (str) – Units as string. See R() for accepted units but omit the ‘/K’ (e.g. J/mol).

  • T (float) – Temperature in K

  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate internal energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_U – Change in internal energy between reactants and products

Return type:

float

get_delta_UoRT(rev=False, act=False, **kwargs)

Gets change in dimensionless internal energy between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate internal energy. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_UoRT – Change in internal energy between reactants and products

Return type:

float

get_delta_q(rev=False, act=False, **kwargs)

Gets change in partition function between reactants and products

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • act (bool, optional) – If True, uses the transition state as the final state. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate partition function. See class docstring to see how to pass specific parameters to different species.

Returns:

delta_q – Change in partition function between reactants and products

Return type:

float

get_delta_quantity(initial_state, final_state, method_name, **kwargs)

Helper method to calculate the change in thermodynamic quantity between states

Parameters:
  • initial_state (str) –

    Thermodynamic state. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

  • final_state (str) –

    Thermodynamic state. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

  • method_name (str) – Name of method to use to calculate quantity. Calculates any quantity as long as the relevant objects have the same method name

  • kwargs (keyword arguments) – Arguments passed to evaluate the quantity of the reactants and products

Returns:

delta_quantity – Change in thermodynamic quantity between particular states

Return type:

float

get_q_act(rev=False, include_ZPE=False, **kwargs)

Gets change in partition function between reactants/products and the transition state

Parameters:
  • rev (bool, optional) – Reverse direction. If True, uses products as initial state instead of reactants. Default is False

  • include_ZPE (bool, optional) – If True, includes zero-point energy when calculating the value of the partition functions. Default is False

  • kwargs (keyword arguments) – Parameters required to calculate partition function. See class docstring to see how to pass specific parameters to different species.

Returns:

q_act – Change in partition function between reactants/products and the transition state

Return type:

float

get_q_state(state, **kwargs)

Gets partition function at a state

Parameters:
  • state (str) –

    state to calculate quantity. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’

  • kwargs (keyword arguments) – Parameters with the conditions to calculate partition function. See class docstring to see how to pass specific parameters to different species.

Returns:

q – Partition function of the reaction state

Return type:

float

get_species(include_TS=True, key='name')

Returns the unique species included in the reaction.

Parameters:
  • include_TS (bool, optional) – Whether transition states should be included. Default is True

  • key (str, optional) – Attribute to use as the key in the output dictionary. Default is name

Returns:

species – Unique species in the reaction

Return type:

dict

get_state_quantity(state, method_name, **kwargs)

Helper method to calculate the thermodynamic quantity of the state

Parameters:
  • state (str) –

    Thermodynamic state. Supported options:

    • ’reactants’

    • ’products’

    • ’transition state’

    • ’transition_state’

    • ’ts’

  • method_name (str) – Name of method to use to calculate quantity. Calculates any quantity as long as the relevant objects have the same method name

  • kwargs (keyword arguments) – Arguments required to calculate the thermodynamic quantity of interest.

Returns:

state_quantity – Thermodynamic quantity of particular state

Return type:

float

property products
property products_stoich
property reactants
property reactants_stoich
to_dict()

Represents object as dictionary with JSON-accepted datatypes

Returns:

obj_dict

Return type:

dict

to_string(species_delimiter='+', reaction_delimiter='=', stoich_format='.2f', include_TS=True, stoich_space=False, key='name')

Writes the Reaction object as a stoichiometric reaction

Parameters:
  • species_delimiter (str, optional) – Separates species. Default is ‘+’

  • reaction_delimiter (str, optional) – Separates reaction states. Default is ‘=’

  • stoich_format (float, optional) – Format to write stoichiometric numbers. Default is ‘.2f’ (float rounded to 2 decimal places)

  • include_TS (bool, optional) – If True, includes transition states in output. Default is True

  • stoich_space (bool, optional) – If True, inserts a space between stoichiometric coefficients and the species name. Default is False

  • key (str, optional) – Attribute to use to print out species. Default is name

Returns:

reaction_str – Reaction string

Return type:

str

property transition_state
property transition_state_stoich