| Cantera 3.0.0

Loading...
Searching...
No Matches
Public Member Functions | List of all members
ArrheniusRate Class Reference
Chemical Kinetics » Reactions and Reaction Rates » Arrhenius-type Parameterizations

Arrhenius reaction rate type depends only on temperature. More...

`#include <Arrhenius.h>`

Inheritance diagram for ArrheniusRate:
[legend]

## Detailed Description

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 169 of file Arrhenius.h.

## Public Member Functions
unique_ptr< MultiRateBase > | newMultiRate () const override
| Create a rate evaluator for reactions of a particular derived type.
const string | type () const override
| String identifying reaction rate specialization.
double | evalRate (double logT, double recipT) const
| Evaluate reaction rate.
double | evalLog (double logT, double recipT) const
| Evaluate natural logarithm of the rate constant.
double | evalFromStruct (const ArrheniusData &shared_data) const
| Evaluate reaction rate.
double | ddTScaledFromStruct (const ArrheniusData &shared_data) const
| Evaluate derivative of reaction rate with respect to temperature divided by reaction rate.
| ArrheniusBase ()
| Default constructor.
| ArrheniusBase (double A, double b, double Ea)
| Constructor.
| ArrheniusBase (const AnyValue &rate, const UnitSystem &units, const UnitStack &rate_units)
| Constructor based on AnyValue content.
| ArrheniusBase (const AnyMap &node, const UnitStack &rate_units={})
Public Member Functions inherited from ArrheniusBase
| ArrheniusBase ()
| Default constructor.
| ArrheniusBase (double A, double b, double Ea)
| Constructor.
| ArrheniusBase (const AnyValue &rate, const UnitSystem &units, const UnitStack &rate_units)
| Constructor based on AnyValue content.
| 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.
void | getRateParameters (AnyMap &node) const
| Get Arrhenius parameters used to populate the `rate-coefficient` or equivalent field.
void | setParameters (const AnyMap &node, const UnitStack &rate_units) override
| Set parameters.
void | getParameters (AnyMap &node) const override
| Get parameters.
void | check (const string &equation) override
| Check rate expression.
void | validate (const string &equation, const Kinetics &kin) override
| Validate the reaction rate expression.
virtual double | preExponentialFactor () const
| Return the pre-exponential factor A (in m, kmol, s to powers depending on the reaction order)
virtual double | temperatureExponent () const
| Return the temperature exponent b
virtual double | activationEnergy () const
| Return the activation energy Ea [J/kmol] The value corresponds to the constant specified by input parameters;.
double | order () const
| Return reaction order associated with the reaction rate.
void | setRateUnits (const UnitStack &rate_units) override
| Set units of the reaction rate expression.
bool | allowNegativePreExponentialFactor () const
| Get flag indicating whether negative A values are permitted.
void | setAllowNegativePreExponentialFactor (bool value)
| Set flag indicating whether negative A values are permitted.
Public Member Functions inherited from ReactionRate
| ReactionRate (const ReactionRate &other)
ReactionRate & | operator= (const ReactionRate &other)
virtual const string | subType () const
| String identifying sub-type of reaction rate specialization.
AnyMap | parameters () const
| Return the parameters such that an identical Reaction could be reconstructed using the newReaction() function.
const Units & | conversionUnits () const
| Get the units for converting the leading term in the reaction rate expression.
void | check (const string &equation, const AnyMap &node)
| Check basic syntax and settings of reaction rate expression.
virtual void | validate (const string &equation)
| Validate the reaction rate expression (legacy call)
size_t | rateIndex () const
| Reaction rate index within kinetics evaluator.
void | setRateIndex (size_t idx)
| Set reaction rate index within kinetics evaluator.
virtual void | setContext (const Reaction &rxn, const Kinetics &kin)
| Set context of reaction rate evaluation.
double | eval (double T)
| Evaluate reaction rate based on temperature.
double | eval (double T, double extra)
| Evaluate reaction rate based on temperature and an extra parameter.
double | eval (double T, const vector< double > &extra)
| Evaluate reaction rate based on temperature and an extra vector parameter.
bool | valid () const
| Get flag indicating whether reaction rate is set up correctly.
bool | compositionDependent ()
| Boolean indicating whether rate has compositional dependence.
void | setCompositionDependence (bool comp_dep)
| Set rate compositional dependence.

## Additional Inherited Members
Protected Attributes inherited from ArrheniusBase
bool | m_negativeA_ok = false
| Permissible negative A values.
double | m_A = NAN
| Pre-exponential factor.
double | m_b = NAN
| Temperature exponent.
double | m_Ea_R = 0.
| Activation energy (in temperature units)
double | m_E4_R = 0.
| Optional 4th energy parameter (in temperature units)
double | m_logA = NAN
| Logarithm of pre-exponential factor.
double | m_order = NAN
| Reaction order.
string | m_A_str = "A"
| The string for the pre-exponential factor.
string | m_b_str = "b"
| The string for temperature exponent.
string | m_Ea_str = "Ea"
| The string for activation energy.
string | m_E4_str = ""
| The string for an optional 4th parameter.
Protected Attributes inherited from ReactionRate
AnyMap | m_input
| Input data used for specific models.
size_t | m_rate_index = npos
| Index of reaction rate within kinetics evaluator.
bool | m_valid = false
| Flag indicating whether reaction rate is set up correctly.
bool | m_composition_dependent_rate = false
| Flag indicating composition dependent rate.
Units | m_conversion_units {0.}
| Units of the leading term in the reaction rate expression.

## Member Function Documentation

## ◆ newMultiRate()

unique_ptr< MultiRateBase > newMultiRate | ( |  | ) | const
| inline override virtual

Create a rate evaluator for reactions of a particular derived type.

Derived classes usually implement this as:

unique_ptr<MultiRateBase> newMultiRate() const override {
return make_unique<MultiRate<RateType, DataType>>();
Cantera::ArrheniusRate::newMultiRate
unique_ptr< MultiRateBase > newMultiRate() const override
Create a rate evaluator for reactions of a particular derived type.
Definition Arrhenius.h:174

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 174 of file Arrhenius.h.

## ◆ type()

const string type | ( |  | ) | const
| inline override virtual

String identifying reaction rate specialization.

Implements ReactionRate.

Definition at line 178 of file Arrhenius.h.

## ◆ evalRate()

double evalRate | ( | double | logT,
|  | double | recipT
| ) |  | const
| inline

Evaluate reaction rate.

Definition at line 183 of file Arrhenius.h.

## ◆ evalLog()

double evalLog | ( | double | logT,
|  | double | recipT
| ) |  | const
| inline

Evaluate natural logarithm of the rate constant.

Definition at line 188 of file Arrhenius.h.

## ◆ evalFromStruct()

double evalFromStruct | ( | const ArrheniusData & | shared_data | ) | const
| inline

Evaluate reaction rate.

Parameters

  shared_data | data shared by all reactions of a given type

Definition at line 196 of file Arrhenius.h.

## ◆ ddTScaledFromStruct()

double ddTScaledFromStruct | ( | const ArrheniusData & | shared_data | ) | const
| inline

Evaluate derivative of reaction rate with respect to temperature divided by reaction rate.

Parameters

  shared_data | data shared by all reactions of a given type

Definition at line 205 of file Arrhenius.h.

## ◆ ArrheniusBase() [1/4]

ArrheniusBase | ( |  | ) |
| inline

Default constructor.

Definition at line 47 of file Arrhenius.h.

## ◆ ArrheniusBase() [2/4]

ArrheniusBase | ( | double | A,
|  | double | b,
|  | double | Ea
| ) |  |

Constructor.

Parameters

  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 56 of file Arrhenius.cpp.

## ◆ ArrheniusBase() [3/4]

ArrheniusBase | ( | const AnyValue & | rate,
|  | const UnitSystem & | units,
|  | const UnitStack & | rate_units
| ) |  |

Constructor based on AnyValue content.

Definition at line 59 of file Arrhenius.cpp.

## ◆ ArrheniusBase() [4/4]

ArrheniusBase | ( | const AnyMap & | node,
|  | const UnitStack & | rate_units = `{}`
| ) |  |
| explicit

Definition at line 62 of file Arrhenius.cpp.

The documentation for this class was generated from the following file:

- Arrhenius.h