Cantera 2.6.0

Public Member Functions | List of all members
ArrheniusRate Class Reference
Chemical Kinetics » Arrhenius-type Parameterizations

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

`#include <Arrhenius.h>`

Inheritance diagram for ArrheniusRate:
[legend]
Collaboration diagram for ArrheniusRate:
[legend]

## 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)
virtual unique_ptr< MultiRateBase > | newMultiRate () const
| Create a rate evaluator for reactions of a particular derived type. More...
virtual const std::string | type () const =0
| String identifying reaction rate specialization. More...
virtual void | setParameters (const AnyMap &node, const UnitStack &units)
| Set parameters. More...
AnyMap | parameters () const
| Return the parameters such that an identical Reaction could be reconstructed using the newReaction() function. More...
virtual void | check (const std::string &equation, const AnyMap &node)
| Check basic syntax and settings of reaction rate expression. More...
virtual void | validate (const std::string &equation, const Kinetics &kin)
| Validate the reaction rate expression. 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
virtual void | getParameters (AnyMap &node) const
| Get parameters. More...
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...

## 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) \]

Todo:
  supersedes Arrhenius2 and will replace Arrhenius after Cantera 2.6. The new behavior can be forced in self-compiled Cantera installations by defining CT_NO_LEGACY_REACTIONS_26 via the 'no_legacy_reactions' option in SCons.

Definition at line 191 of file Arrhenius.h.

## 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 unique_ptr<MultiRateBase>(new 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:196
Cantera::MultiRate
A class template handling ReactionRate specializations.
Definition: MultiRate.h:21

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.

## ◆ type()

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

String identifying reaction rate specialization.

Implements ReactionRate.

Reimplemented in Arrhenius2.

Definition at line 200 of file Arrhenius.h.

## ◆ evalRate()

double evalRate | ( | double | logT,
|  | double | recipT
| ) |  | const
| 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().

## ◆ evalLog()

double evalLog | ( | double | logT,
|  | double | recipT
| ) |  | const
| 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.

## ◆ 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 218 of file Arrhenius.h.

References ReactionData::logT, ArrheniusBase::m_A, ArrheniusBase::m_b, ArrheniusBase::m_Ea_R, and ReactionData::recipT.

## ◆ 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 227 of file Arrhenius.h.

References ArrheniusBase::m_b, ArrheniusBase::m_Ea_R, and ReactionData::recipT.

## ◆ ArrheniusBase() [1/4]

ArrheniusBase | ( |  | ) |

Default constructor.

Definition at line 55 of file Arrhenius.cpp.

References ArrheniusBase::m_A_str.

## ◆ 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 64 of file Arrhenius.cpp.

## ◆ ArrheniusBase() [3/4]

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

Constructor based on AnyValue content.

Definition at line 67 of file Arrhenius.h.

## ◆ ArrheniusBase() [4/4]

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

Definition at line 73 of file Arrhenius.h.

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

- Arrhenius.h