Cantera 2.6.0
|
Arrhenius reaction rate type depends only on temperature. More...
#include <Arrhenius.h>
Public Member Functions | |
unique_ptr< MultiRateBase > | newMultiRate () const override |
Create a rate evaluator for reactions of a particular derived type. More... | |
virtual const std::string | type () const override |
String identifying reaction rate specialization. More... | |
double | evalRate (double logT, double recipT) const |
Evaluate reaction rate. More... | |
double | evalLog (double logT, double recipT) const |
Evaluate natural logarithm of the rate constant. More... | |
double | evalFromStruct (const ArrheniusData &shared_data) const |
Evaluate reaction rate. More... | |
double | ddTScaledFromStruct (const ArrheniusData &shared_data) const |
Evaluate derivative of reaction rate with respect to temperature divided by reaction rate. More... | |
ArrheniusBase () | |
Default constructor. More... | |
ArrheniusBase (double A, double b, double Ea) | |
Constructor. More... | |
ArrheniusBase (const AnyValue &rate, const UnitSystem &units, const UnitStack &rate_units) | |
Constructor based on AnyValue content. More... | |
ArrheniusBase (const AnyMap &node, const UnitStack &rate_units={}) | |
Public Member Functions inherited from ArrheniusBase | |
ArrheniusBase () | |
Default constructor. More... | |
ArrheniusBase (double A, double b, double Ea) | |
Constructor. More... | |
ArrheniusBase (const AnyValue &rate, const UnitSystem &units, const UnitStack &rate_units) | |
Constructor based on AnyValue content. More... | |
ArrheniusBase (const AnyMap &node, const UnitStack &rate_units={}) | |
void | setRateParameters (const AnyValue &rate, const UnitSystem &units, const UnitStack &rate_units) |
Perform object setup based on AnyValue node information. More... | |
void | getRateParameters (AnyMap &node) const |
Return parameters. More... | |
virtual void | setParameters (const AnyMap &node, const UnitStack &rate_units) override |
Set parameters. More... | |
virtual void | getParameters (AnyMap &node) const override |
Get parameters. More... | |
virtual void | check (const std::string &equation, const AnyMap &node) override |
Check rate expression. More... | |
virtual void | validate (const std::string &equation, const Kinetics &kin) override |
Validate the reaction rate expression. More... | |
virtual double | preExponentialFactor () const |
Return the pre-exponential factor A (in m, kmol, s to powers depending on the reaction order) More... | |
virtual double | temperatureExponent () const |
Return the temperature exponent b More... | |
virtual double | activationEnergy () const |
Return the activation energy Ea [J/kmol] The value corresponds to the constant specified by input parameters;. More... | |
const Units & | rateUnits () const |
double | order () const |
Return reaction order associated with the reaction rate. More... | |
void | setRateUnits (const UnitStack &rate_units) |
Set units of the reaction rate expression. More... | |
bool | allowNegativePreExponentialFactor () const |
Get flag indicating whether negative A values are permitted. More... | |
void | setAllowNegativePreExponentialFactor (bool value) |
Set flag indicating whether negative A values are permitted. More... | |
Public Member Functions inherited from ReactionRate | |
ReactionRate (const ReactionRate &other) | |
ReactionRate & | operator= (const ReactionRate &other) |
AnyMap | parameters () const |
Return the parameters such that an identical Reaction could be reconstructed using the newReaction() function. More... | |
virtual void | validate (const std::string &equation) |
Validate the reaction rate expression (legacy call) More... | |
size_t | rateIndex () const |
Reaction rate index within kinetics evaluator. More... | |
void | setRateIndex (size_t idx) |
Set reaction rate index within kinetics evaluator. More... | |
virtual void | setContext (const Reaction &rxn, const Kinetics &kin) |
Set context of reaction rate evaluation. More... | |
double | eval (double T) |
Evaluate reaction rate based on temperature. More... | |
double | eval (double T, double extra) |
Evaluate reaction rate based on temperature and an extra parameter. More... | |
double | eval (double T, const std::vector< double > &extra) |
Evaluate reaction rate based on temperature and an extra vector parameter. More... | |
Additional Inherited Members | |
Protected Attributes inherited from ArrheniusBase | |
bool | m_negativeA_ok |
Flag indicating whether negative A values are permitted. More... | |
double | m_A |
Pre-exponential factor. More... | |
double | m_b |
Temperature exponent. More... | |
double | m_Ea_R |
Activation energy (in temperature units) More... | |
double | m_E4_R |
Optional 4th energy parameter (in temperature units) More... | |
double | m_logA |
Logarithm of pre-exponential factor. More... | |
double | m_order |
Reaction order. More... | |
std::string | m_A_str = "A" |
The string for temperature exponent. More... | |
std::string | m_b_str = "b" |
The string for temperature exponent. More... | |
std::string | m_Ea_str = "Ea" |
The string for activation energy. More... | |
std::string | m_E4_str = "" |
The string for an optional 4th parameter. More... | |
Units | m_rate_units |
Reaction rate units. More... | |
Protected Attributes inherited from ReactionRate | |
AnyMap | m_input |
Input data used for specific models. More... | |
size_t | m_rate_index |
Index of reaction rate within kinetics evaluator. More... | |
Arrhenius reaction rate type depends only on temperature.
A reaction rate coefficient of the following form.
\[ k_f = A T^b \exp (-Ea/RT) \]
Definition at line 191 of file Arrhenius.h.
|
inlineoverridevirtual |
Create a rate evaluator for reactions of a particular derived type.
Derived classes usually implement this as:
where RateType
is the derived class name and DataType
is the corresponding container for parameters needed to evaluate reactions of that type.
Reimplemented from ReactionRate.
Definition at line 196 of file Arrhenius.h.
|
inlineoverridevirtual |
String identifying reaction rate specialization.
Implements ReactionRate.
Reimplemented in Arrhenius2.
Definition at line 200 of file Arrhenius.h.
|
inline |
Evaluate reaction rate.
Definition at line 205 of file Arrhenius.h.
References ArrheniusBase::m_A, ArrheniusBase::m_b, and ArrheniusBase::m_Ea_R.
Referenced by FalloffRate::evalFromStruct().
|
inline |
Evaluate natural logarithm of the rate constant.
Definition at line 210 of file Arrhenius.h.
References ArrheniusBase::m_b, ArrheniusBase::m_Ea_R, and ArrheniusBase::m_logA.
|
inline |
Evaluate reaction rate.
shared_data | data shared by all reactions of a given type |
Definition at line 218 of file Arrhenius.h.
References ReactionData::logT, ArrheniusBase::m_A, ArrheniusBase::m_b, ArrheniusBase::m_Ea_R, and ReactionData::recipT.
|
inline |
Evaluate derivative of reaction rate with respect to temperature divided by reaction rate.
shared_data | data shared by all reactions of a given type |
Definition at line 227 of file Arrhenius.h.
References ArrheniusBase::m_b, ArrheniusBase::m_Ea_R, and ReactionData::recipT.
ArrheniusBase | ( | ) |
Default constructor.
Definition at line 55 of file Arrhenius.cpp.
References ArrheniusBase::m_A_str.
ArrheniusBase | ( | double | A, |
double | b, | ||
double | Ea | ||
) |
Constructor.
A | Pre-exponential factor. The unit system is (kmol, m, s); actual units depend on the reaction order and the dimensionality (surface or bulk). |
b | Temperature exponent (non-dimensional) |
Ea | Activation energy in energy units [J/kmol] |
Definition at line 64 of file Arrhenius.cpp.
|
inline |
Constructor based on AnyValue content.
Definition at line 67 of file Arrhenius.h.
|
inlineexplicit |
Definition at line 73 of file Arrhenius.h.