rmgpy.kinetics.PDepArrhenius

class rmgpy.kinetics.PDepArrhenius(pressures=None, arrhenius=None, highPlimit=None, Tmin=None, Tmax=None, Pmin=None, Pmax=None, comment='')

A kinetic model of a phenomenological rate coefficient \(k(T,P)\) where a set of Arrhenius kinetics are stored at a variety of pressures and interpolated between on a logarithmic scale. The attributes are:

Attribute

Description

pressures

The list of pressures

arrhenius

The list of Arrhenius objects at each pressure

Tmin

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

Tmax

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

Pmin

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

Pmax

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

efficiencies

A dict associating chemical species with associated efficiencies

order

The reaction order (1 = first, 2 = second, etc.)

comment

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

The pressure-dependent Arrhenius formulation is sometimes used to extend the Arrhenius expression to handle pressure-dependent kinetics. The formulation simply parameterizes \(A\), \(n\), and \(E_\mathrm{a}\) to be dependent on pressure:

\[k(T,P) = A(P) \left( \frac{T}{T_0} \right)^{n(P)} \exp \left( -\frac{E_\mathrm{a}(P)}{RT} \right)\]

Although this suggests some physical insight, the \(k(T,P)\) data is often highly complex and non-Arrhenius, limiting the usefulness of this formulation to simple systems.

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.

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.

arrhenius

list

Type:

arrhenius

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

fit_to_data(self, ndarray Tlist, ndarray Plist, ndarray K, unicode kunits, double T0=1)

Fit the pressure-dependent Arrhenius model to a matrix of rate coefficient data K with units of kunits corresponding to a set of temperatures Tlist in K and pressures Plist in Pa. An Arrhenius model is fit cpdef change_rate(self, double factor)at each pressure.

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) double

Return the rate coefficient in the appropriate combination of m^3, mol, and s at temperature T in K and pressure P in Pa.

highPlimit

rmgpy.kinetics.model.KineticsModel

Type:

highPlimit

is_identical_to(self, KineticsModel other_kinetics) bool

Returns True if kinetics matches that of another kinetics model. Each duplicate reaction must be matched and equal to that in the other PDepArrhenius model in the same order. Otherwise returns False

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.

pressures

The list of pressures.

set_cantera_kinetics(self, ct_reaction, species_list)

Sets a Cantera PlogReaction()’s rates attribute with A list of tuples containing [(pressure in Pa, cantera arrhenius object), (..)]

to_html(self)

Return an HTML rendering.

uncertainty

rmgpy.kinetics.uncertainties.RateUncertainty

Type:

uncertainty