rmgpy.kinetics.Troe

class rmgpy.kinetics.Troe(arrheniusHigh=None, arrheniusLow=None, alpha=0.0, T3=None, T1=None, T2=None, Tmin=None, Tmax=None, Pmin=None, Pmax=None, efficiencies=None, comment='')

A kinetic model of a phenomenological rate coefficient \(k(T, P)\) using the Troe formulation. The attributes are:

Attribute

Description

arrheniusHigh

The Arrhenius kinetics at the high-pressure limit

arrheniusLow

The Arrhenius kinetics at the low-pressure limit

alpha

The \(\alpha\) parameter

T1

The \(T_1\) parameter

T2

The \(T_2\) parameter

T3

The \(T_3\) parameter

Tmin

The minimum temperature at which the model is valid, or zero if unknown or undefined

Tmax

The maximum temperature at which the model is valid, or zero if unknown or undefined

Pmin

The minimum pressure at which the model is valid, or zero if unknown or undefined

Pmax

The maximum pressure at which the model is valid, or zero if unknown or undefined

efficiencies

A dict associating chemical species with associated efficiencies

comment

Information about the model (e.g. its source)

The Troe model attempts to make the Lindemann model quantitative by introducing a broadening factor \(F\). The formulation is as follows:

\[k(T,P) = k_\infty(T) \left[ \frac{P_\mathrm{r}}{1 + P_\mathrm{r}} \right] F\]

where

\[ \begin{align}\begin{aligned}P_\mathrm{r} &= \frac{k_0(T)}{k_\infty(T)} [\mathrm{M}]\\k_0(T) &= A_0 T^{n_0} \exp \left( - \frac{E_0}{RT} \right)\\k_\infty(T) &= A_\infty T^{n_\infty} \exp \left( - \frac{E_\infty}{RT} \right)\end{aligned}\end{align} \]

and \([\mathrm{M}] \approx P/RT\) is the concentration of the bath gas. The Arrhenius expressions \(k_0(T)\) and \(k_\infty(T)\) represent the low-pressure and high-pressure limit kinetics, respectively. The broadening factor \(F\) is computed via

\[ \begin{align}\begin{aligned}\log F &= \left\{1 + \left[ \frac{\log P_\mathrm{r} + c}{n - d (\log P_\mathrm{r} + c)} \right]^2 \right\}^{-1} \log F_\mathrm{cent}\\c &= -0.4 - 0.67 \log F_\mathrm{cent}\\n &= 0.75 - 1.27 \log F_\mathrm{cent}\\d &= 0.14\\F_\mathrm{cent} &= (1 - \alpha) \exp \left( -T/T_3 \right) + \alpha \exp \left( -T/T_1 \right) + \exp \left( -T_2/T \right)\end{aligned}\end{align} \]
Pmax

The maximum pressure at which the model is valid, or None if not defined.

Pmin

The minimum pressure at which the model is valid, or None if not defined.

T1

The Troe \(T_1\) parameter.

T2

The Troe \(T_2\) parameter.

T3

The Troe \(T_3\) parameter.

Tmax

The maximum temperature at which the model is valid, or None if not defined.

Tmin

The minimum temperature at which the model is valid, or None if not defined.

alpha

‘double’

Type:

alpha

arrheniusHigh

rmgpy.kinetics.arrhenius.Arrhenius

Type:

arrheniusHigh

arrheniusLow

rmgpy.kinetics.arrhenius.Arrhenius

Type:

arrheniusLow

change_rate(self, double factor)

Changes kinetics rate by a multiple factor.

comment

unicode

Type:

comment

discrepancy(self, KineticsModel other_kinetics) double

Returns some measure of the discrepancy based on two different reaction models.

efficiencies

dict

Type:

efficiencies

get_cantera_efficiencies(self, species_list)

Returns a dictionary containing the collider efficiencies for this PDepKineticsModel object suitable for setting the efficiencies in the following cantera reaction objects: ThreeBodyReaction, FalloffReaction,`ChemicallyActivatedReaction`

get_effective_collider_efficiencies(self, list species) ndarray

Return the effective collider efficiencies for all species in the form of a numpy array. This function helps assist rapid effective pressure calculations in the solver.

get_effective_pressure(self, double P, list species, ndarray fractions) double

Return the effective pressure in Pa for a system at a given pressure P in Pa composed of the given list of species (Species or Molecule objects) with the given fractions.

get_rate_coefficient(self, double T, double P=0.0) double

Return the value of the rate coefficient \(k(T)\) in units of m^3, mol, and s at the specified temperature T in K and pressure P in Pa. If you wish to consider collision efficiencies, then you should first use get_effective_pressure() to compute the effective pressure, and pass that value as the pressure to this method.

highPlimit

rmgpy.kinetics.model.KineticsModel

Type:

highPlimit

is_identical_to(self, KineticsModel other_kinetics) bool

Checks to see if kinetics matches that of other kinetics and returns True if coeffs, kunits, Tmin,

is_pressure_dependent(self) bool

Return True since all objects derived from PDepKineticsModel represent pressure-dependent kinetics.

is_pressure_valid(self, double P) bool

Return True if the pressure P in Pa is within the valid pressure range of the kinetic data, or False if not. If the minimum and maximum pressure are not defined, True is returned.

is_similar_to(self, KineticsModel other_kinetics) bool

Returns True if rates of reaction at temperatures 500,1000,1500,2000 K and 1 and 10 bar are within +/ .5 for log(k), in other words, within a factor of 3.

is_temperature_valid(self, double T) bool

Return True if the temperature T in K is within the valid temperature range of the kinetic data, or False if not. If the minimum and maximum temperature are not defined, True is returned.

set_cantera_kinetics(self, ct_reaction, species_list)

Sets the efficiencies, kinetics, and troe falloff parameters for a cantera FalloffReaction.

to_html(self)

Return an HTML rendering.

uncertainty

rmgpy.kinetics.uncertainties.RateUncertainty

Type:

uncertainty