56 Arrhenius2(doublereal A, doublereal b, doublereal E);
65 void setRateParameters(
const AnyValue& rate,
84 doublereal
updateLog(doublereal logT, doublereal recipT)
const {
94 doublereal
updateRC(doublereal logT, doublereal recipT)
const {
98 virtual const std::string
type()
const override {
145 doublereal m, doublereal e);
147 void update_C(
const doublereal* theta) {
153 for (
size_t n = 0; n < m_ac.size(); n++) {
155 m_acov += m_ac[n] * theta[k];
156 m_ecov += m_ec[n] * theta[k];
158 for (
size_t n = 0; n < m_mc.size(); n++) {
160 th = std::max(theta[k],
Tiny);
161 m_mcov += m_mc[n]*std::log(th);
171 doublereal
updateRC(doublereal logT, doublereal recipT)
const {
172 return m_A * std::exp(std::log(10.0)*m_acov + m_b*logT -
173 (m_E + m_ecov)*recipT + m_mcov);
182 return m_A * std::exp(std::log(10.0)*m_acov + m_mcov);
197 doublereal m_b, m_E, m_A;
198 doublereal m_acov, m_ecov, m_mcov;
199 std::vector<size_t> m_sp, m_msp;
204#ifdef CT_NO_LEGACY_REACTIONS_26
205typedef ArrheniusRate Arrhenius;
207typedef Arrhenius2 Arrhenius;
210typedef PlogRate Plog;
Header file for class Cantera::Array2D.
Header for reaction rates that involve Arrhenius-type kinetics.
A map of string keys to values whose type can vary at runtime.
A wrapper for a variable whose type is determined at runtime.
Arrhenius reaction rate type depends only on temperature.
double activationEnergy_R() const
Return the activation energy divided by the gas constant (that is, the activation temperature) [K].
void update_C(const doublereal *c)
Update concentration-dependent parts of the rate coefficient.
doublereal updateRC(doublereal logT, doublereal recipT) const
Update the value the rate constant.
doublereal updateLog(doublereal logT, doublereal recipT) const
Update the value of the natural logarithm of the rate constant.
void getParameters(AnyMap &node, const Units &rate_units) const
Return parameters - two-parameter version.
virtual const std::string type() const override
String identifying reaction rate specialization.
Arrhenius2()
Default constructor.
virtual void getParameters(AnyMap &node) const override
Get parameters.
double m_A
Pre-exponential factor.
void setRateParameters(const AnyValue &rate, const UnitSystem &units, const UnitStack &rate_units)
Perform object setup based on AnyValue node information.
double m_b
Temperature exponent.
double m_logA
Logarithm of pre-exponential factor.
double m_Ea_R
Activation energy (in temperature units)
Arrhenius reaction rate type depends only on temperature.
An Arrhenius rate with coverage-dependent terms.
doublereal updateRC(doublereal logT, doublereal recipT) const
Update the value of the rate constant.
doublereal temperatureExponent() const
Return effective temperature exponent.
doublereal activationEnergy_R() const
Return the activation energy divided by the gas constant (that is, the activation temperature) [K],...
doublereal preExponentialFactor() const
Return the pre-exponential factor A (in m, kmol, s to powers depending on the reaction order) account...
void addCoverageDependence(size_t k, doublereal a, doublereal m, doublereal e)
Add a coverage dependency for species k, with exponential dependence a, power-law exponent m,...
A representation of the units associated with a dimensional quantity.
Definitions for the classes that are thrown when Cantera experiences an error condition (also contain...
This file contains definitions for utility functions and text for modules, inputfiles,...
Namespace for the Cantera kernel.
const double Tiny
Small number to compare differences of mole fractions against.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
This file defines some constants used to specify reaction types.