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:
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
¶arrhenius: list
changeRate
(self, double factor)¶Changes kinetics rate by a multiple factor
.
comment
¶comment: str
discrepancy
(self, KineticsModel otherKinetics) → double¶Returns some measure of the discrepancy based on two different reaction models.
efficiencies
¶efficiencies: dict
fitToData
(self, ndarray Tlist, ndarray Plist, ndarray K, str 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 changeRate(self, double factor)at each pressure.
getCanteraEfficiencies
(self, speciesList)¶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`
getEffectiveColliderEfficiencies
(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.
getEffectivePressure
(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.
getRateCoefficient
(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
¶highPlimit: rmgpy.kinetics.model.KineticsModel
isIdenticalTo
(self, KineticsModel otherKinetics) → 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
isPressureDependent
(self) → bool¶Return True
since all objects derived from PDepKineticsModel
represent pressure-dependent kinetics.
isPressureValid
(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.
isSimilarTo
(self, KineticsModel otherKinetics) → 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.
isTemperatureValid
(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.
setCanteraKinetics
(self, ctReaction, speciesList)¶Sets a Cantera PlogReaction()’s rates attribute with A list of tuples containing [(pressure in Pa, cantera arrhenius object), (..)]
toHTML
(self)¶Return an HTML rendering.