Reaction Rate Measurements¶
Contents
Base reaction rate measurement¶
-
class
reactions.
RxnMeasurement
(name=None, model=None, value=None, uncertainty=None, active_parameters=None, parameter_uncertainties=None, response=None, response_type='linear', response_perturbation=0.3, model_value=None, sensitivity_list=None, comment=None)¶ A special class for optimizing reaction rate measurements.
Since there is an analytic expression for the sensitivities, creating the response surfaces is more straigtforward than it would be for a normal experiment. The call signature for this measurement is the same as for
mumpce.Measurement
.-
make_response
()¶ Generates a sensitivity_analysis_based response surface for this measurement
Because there is an analytical solution, perturbations are not necessary for most reaction rate parameters. If the reaction rate is given by:
\[k = A T^b \exp \left( \frac{-E}{RT} \right)\]then
\[\frac{d \log k}{d \log A} = 1\]\[\frac{d \log k}{d \log E} = \frac{-E}{RT}\]The response surface derivatives are given by
\[a_i = \frac{d \log y}{d \log p_i} \log f_i\]where \(f_i\) is the uncertainty factor of parameter \(p_i\). In the case of activation energies, \(\log f_i\) is approximated by \(f_i - 1\)
-
Base reaction rate class¶
-
class
reactions.
ReactionRateBase
(T, Patm, composition, chemistry_model, **kwargs)¶ The base class for optimizing reaction rates.
This class defines some shared attributes across all ReactionRate type classes and a shared sensitivity method.
Parameters: - T (float) – The temperature at which to evaluate the rate constant in Kelvins
- Patm (float) – The pressure in atmospheres (will be converted internally to Pa)
- composition (str,ndarray(float)) – The composition for which the rate constant will be evaluated. This is important for reactions with third-body collision efficiencies. Can be a float array or a Cantera composition string
-
sensitivity
(perturbation, parameter_list, logfile)¶ Evaluates the sensitivity of the reaction rate with respect to the model parameters
Because there is an analytical solution, perturbations are not necessary for most reaction rate parameters. If the reaction rate is given by:
\[k = A T^b \exp \left( \frac{-E}{RT} \right)\]then
\[\frac{d \log k}{d \log A} = 1 \frac{d \log k}{d \log E} = \frac{-E}{RT}\]For rate ratios, the denominator sensitivities differ by a factor of -1. For falloff reactions, the sensitivity must be calculated by perturbation, since the rate expression is potentially very complicated.
Parameters: - perturbation (float) – The amount to perturb each parameter during the sensitivity analysis
- parameter_list (array_like) – The list of parameters to perturb. This will be a list of parameter identifiers, which are usually ints or strs.
- logfile (str) – The logging file that will contain the sensitivity calculation output.
Returns: model_value,sensitivity_vector
Return type: float,ndarray
Reaction rate at specified condition¶
-
class
reactions.
ReactionRateAtCondition
(T, Patm, composition, chemistry_model, reaction_number=None, **kwargs)¶ A class that will specify a rate constant at a particular temperature and pressure.
Parameters: - T (float) – The temperature at which to evaluate the rate constant in Kelvins
- Patm (float) – The pressure in atmospheres (will be converted internally to Pa)
- composition (str,ndarray(float)) – The composition for which the rate constant will be evaluated. This is important for reactions with third-body collision efficiencies. Can be a float array or a Cantera composition string
Key reaction_number: The reaction number from the Cantera model which will be used
Reaction rate at specified condition¶
-
class
reactions.
ReactionRateRatioAtCondition
(T, Patm, composition, chemistry_model, reaction_numerator=None, reaction_denominator=None, **kwargs)¶ A class that will specify a ratio of two rate constants at a particular temperature and pressure.
Parameters: - T (float) – The temperature at which to evaluate the rate constant in Kelvins
- Patm (float) – The pressure in atmospheres (will be converted internally to Pa)
- composition (str,ndarray(float)) – The composition for which the rate constant will be evaluated. This is important for reactions with third-body collision efficiencies. Can be a float array or a Cantera composition string
Key reaction_numerator: The reaction number from the Cantera model that specifies the numerator reaction
Key reaction_denominator: The reaction number from the Cantera model that specifies the denominator reaction
Reaction rate A-factor ratio¶
-
class
reactions.
ReactionARatio
(T, Patm, composition, chemistry_model, reaction_numerator=None, reaction_denominator=None, **kwargs)¶ A class that will specify the ratio of A-factors for two reactions
Parameters: - T (float) – The temperature at which to evaluate the rate constant in Kelvins
- Patm (float) – The pressure in atmospheres (will be converted internally to Pa)
- composition (str,ndarray(float)) – The composition for which the rate constant will be evaluated. This is important for reactions with third-body collision efficiencies. Can be a float array or a Cantera composition string
Key reaction_numerator: The reaction number from the Cantera model that specifies the numerator reaction
Key reaction_denominator: The reaction number from the Cantera model that specifies the denominator reaction
Reaction rate activation energy difference¶
-
class
reactions.
ReactionEDiff
(T, Patm, composition, chemistry_model, reaction_numerator=None, reaction_denominator=None, **kwargs)¶ A class that will specify the difference between activation energies for two reactions
Parameters: - T (float) – The temperature at which to evaluate the rate constant in Kelvins
- Patm (float) – The pressure in atmospheres (will be converted internally to Pa)
- composition (str,ndarray(float)) – The composition for which the rate constant will be evaluated. This is important for reactions with third-body collision efficiencies. Can be a float array or a Cantera composition string
Key reaction_numerator: The reaction number from the Cantera model that specifies the numerator reaction
Key reaction_denominator: The reaction number from the Cantera model that specifies the denominator reaction