Cantera 2.6.0

Public Member Functions | Protected Attributes | List of all members
FalloffRate Class Reference

Base class for falloff rate calculators. More...

`#include <Falloff.h>`

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

## Public Member Functions
| FalloffRate (const AnyMap &node, const UnitStack &rate_units={})
void | init (const vector_fp &c)
| Initialize. More...
virtual void | setFalloffCoeffs (const vector_fp &c)
| Set coefficients of the falloff parameterization. More...
virtual void | getFalloffCoeffs (vector_fp &c) const
| Retrieve coefficients of the falloff parameterization. More...
virtual void | updateTemp (double T, double *work) const
| Update the temperature-dependent portions of the falloff function, if any, and store them in the 'work' array. More...
virtual double | F (double pr, const double *work) const
| The falloff function. More...
double | evalF (double T, double conc3b)
| Evaluate falloff function at current conditions. More...
virtual size_t | workSize () const
| The size of the work array required. More...
virtual const std::string | type () const
| String identifying reaction rate specialization. More...
virtual size_t | nParameters () const
| Returns the number of parameters used by this parameterization. More...
virtual void | setParameters (const AnyMap &node, const UnitStack &rate_units)
| Set parameters. More...
virtual void | getParameters (double *params) const
| Get the values of the parameters for this object. More...
virtual void | getParameters (AnyMap &node) const
| Get parameters. More...
virtual double | evalFromStruct (const FalloffData &shared_data)
| Evaluate reaction rate. More...
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...
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...
bool | chemicallyActivated () const
| Get flag indicating whether reaction is chemically activated. More...
void | setChemicallyActivated (bool activated)
| Set flag indicating whether reaction is chemically activated. More...
ArrheniusRate & | lowRate ()
| Get reaction rate in the low-pressure limit. More...
void | setLowRate (const ArrheniusRate &low)
| Set reaction rate in the low-pressure limit. More...
ArrheniusRate & | highRate ()
| Get reaction rate in the high-pressure limit. More...
void | setHighRate (const ArrheniusRate &high)
| Set reaction rate in the high-pressure limit. 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...

## Protected Attributes
ArrheniusRate | m_lowRate
| The reaction rate in the low-pressure limit. More...
ArrheniusRate | m_highRate
| The reaction rate in the high-pressure limit. More...
bool | m_chemicallyActivated
| Flag labeling reaction as chemically activated. More...
bool | m_negativeA_ok
| Flag indicating whether negative A values are permitted. More...
double | m_rc_low
| Evaluated reaction rate in the low-pressure limit. More...
double | m_rc_high
| Evaluated reaction rate in the high-pressure limit. More...
vector_fp | m_work
| Work vector. 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...

## Additional Inherited Members
virtual void | getParameters (AnyMap &node) const
| Get parameters. More...

## Detailed Description

Base class for falloff rate calculators.

Each instance of a subclass of FalloffRate calculates the falloff reaction rate based on specific implementations of the falloff function.

Definition at line 78 of file Falloff.h.

## Constructor & Destructor Documentation

## ◆ FalloffRate() [1/2]

FalloffRate | ( |  | ) |
| inline

Definition at line 81 of file Falloff.h.

## ◆ FalloffRate() [2/2]

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

Definition at line 89 of file Falloff.h.

## Member Function Documentation

## ◆ init()

void init | ( | const vector_fp & | c | ) |

Initialize.

Must be called before any other method is invoked.

Parameters

  c | Vector of coefficients of the parameterization. The number and meaning of these coefficients is subclass-dependent.

Todo:
  deprecate; superseded by setFalloffCoeffs

Definition at line 85 of file Falloff.cpp.

## ◆ setFalloffCoeffs()

void setFalloffCoeffs | ( | const vector_fp & | c | ) |
| virtual

Set coefficients of the falloff parameterization.

Parameters

  c | Vector of coefficients of the parameterization. The number and meaning of these coefficients is subclass-dependent.

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 116 of file Falloff.cpp.

## ◆ getFalloffCoeffs()

void getFalloffCoeffs | ( | vector_fp & | c | ) | const
| virtual

Retrieve coefficients of the falloff parameterization.

Parameters

  c | Vector of coefficients of the parameterization. The number and meaning of these coefficients is subclass-dependent.

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 125 of file Falloff.cpp.

## ◆ updateTemp()

virtual void updateTemp | ( | double | T,
|  | double * | work
| ) |  | const
| inline virtual

Update the temperature-dependent portions of the falloff function, if any, and store them in the 'work' array.

If not overloaded, the default behavior is to do nothing.

Parameters

  T | Temperature [K].
  work | storage space for intermediate results.

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 128 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct().

## ◆ F()

virtual double F | ( | double | pr,
|  | const double * | work
| ) |  | const
| inline virtual

The falloff function.

This is defined so that the rate coefficient is

\[ k = F(Pr)\frac{Pr}{1 + Pr}. \]

Here \( Pr \) is the reduced pressure, defined by

\[ Pr = \frac{k_0 [M]}{k_\infty}. \]

Parameters

  pr | reduced pressure (dimensionless).
  work | array of size workSize() containing cached temperature-dependent intermediate results from a prior call to updateTemp.

Returns
  the value of the falloff function \( F \) defined above

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 147 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct().

## ◆ evalF()

double evalF | ( | double | T,
|  | double | conc3b
| ) |  |
| inline

Evaluate falloff function at current conditions.

Definition at line 152 of file Falloff.h.

## ◆ workSize()

virtual size_t workSize | ( |  | ) | const
| inline virtual

The size of the work array required.

Todo:
  deprecate; only used by legacy framework

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 166 of file Falloff.h.

## ◆ type()

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

String identifying reaction rate specialization.

Implements ReactionRate.

Reimplemented in LindemannRate, TroeRate, SriRate, and TsangRate.

Definition at line 170 of file Falloff.h.

## ◆ nParameters()

virtual size_t nParameters | ( |  | ) | const
| inline virtual

Returns the number of parameters used by this parameterization.

The values of these parameters can be obtained from getParameters().

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 176 of file Falloff.h.

## ◆ setParameters()

void setParameters | ( | const AnyMap & | node,
|  | const UnitStack & | units
| ) |  |
| virtual

Set parameters.

Parameters

  node | AnyMap object containing reaction rate specification
  units | unit definitions specific to rate information

Reimplemented from ReactionRate.

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 130 of file Falloff.cpp.

References AnyMap::empty(), AnyMap::getBool(), AnyMap::hasKey(), UnitStack::join(), UnitStack::size(), and AnyMap::units().

## ◆ getParameters() [1/2]

virtual void getParameters | ( | double * | params | ) | const
| inline virtual

Get the values of the parameters for this object.

params must be an array of at least nParameters() elements.

Todo:
  deprecate; superseded by getFalloffCoeffs

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 187 of file Falloff.h.

## ◆ getParameters() [2/2]

void getParameters | ( | AnyMap & | node | ) | const
| virtual

Get parameters.

Parameters

  node | AnyMap containing rate information Store the parameters of a ReactionRate needed to reconstruct an identical object. Does not include user-defined fields available in the m_input map.

Reimplemented from ReactionRate.

Reimplemented in TroeRate, SriRate, and TsangRate.

Definition at line 163 of file Falloff.cpp.

References AnyMap::clear(), and AnyMap::empty().

## ◆ evalFromStruct()

virtual double evalFromStruct | ( | const FalloffData & | shared_data | ) |
| inline virtual

Evaluate reaction rate.

Parameters

  shared_data | data shared by all reactions of a given type

Definition at line 193 of file Falloff.h.

References FalloffData::conc_3b, ArrheniusRate::evalRate(), FalloffRate::F(), ReactionData::logT, FalloffRate::m_chemicallyActivated, FalloffRate::m_highRate, FalloffRate::m_lowRate, ReactionRate::m_rate_index, FalloffRate::m_rc_high, FalloffRate::m_rc_low, FalloffRate::m_work, FalloffData::ready, ReactionData::recipT, Cantera::SmallNumber, ReactionData::temperature, and FalloffRate::updateTemp().

## ◆ check()

void check | ( | const std::string & | equation,
|  | const AnyMap & | node
| ) |  |
| virtual

Check basic syntax and settings of reaction rate expression.

Reimplemented from ReactionRate.

Definition at line 185 of file Falloff.cpp.

## ◆ validate()

void validate | ( | const std::string & | equation,
|  | const Kinetics & | kin
| ) |  |
| virtual

Validate the reaction rate expression.

Reimplemented from ReactionRate.

Definition at line 203 of file Falloff.cpp.

## ◆ allowNegativePreExponentialFactor()

bool allowNegativePreExponentialFactor | ( |  | ) | const
| inline

Get flag indicating whether negative A values are permitted.

Definition at line 221 of file Falloff.h.

References FalloffRate::m_negativeA_ok.

## ◆ setAllowNegativePreExponentialFactor()

void setAllowNegativePreExponentialFactor | ( | bool | value | ) |
| inline

Set flag indicating whether negative A values are permitted.

Definition at line 226 of file Falloff.h.

References FalloffRate::m_negativeA_ok.

## ◆ chemicallyActivated()

bool chemicallyActivated | ( |  | ) | const
| inline

Get flag indicating whether reaction is chemically activated.

Definition at line 231 of file Falloff.h.

References FalloffRate::m_chemicallyActivated.

## ◆ setChemicallyActivated()

void setChemicallyActivated | ( | bool | activated | ) |
| inline

Set flag indicating whether reaction is chemically activated.

Definition at line 236 of file Falloff.h.

References FalloffRate::m_chemicallyActivated.

## ◆ lowRate()

ArrheniusRate & lowRate | ( |  | ) |
| inline

Get reaction rate in the low-pressure limit.

Definition at line 241 of file Falloff.h.

References FalloffRate::m_lowRate.

## ◆ setLowRate()

void setLowRate | ( | const ArrheniusRate & | low | ) |

Set reaction rate in the low-pressure limit.

Definition at line 90 of file Falloff.cpp.

References ArrheniusBase::check(), ArrheniusBase::preExponentialFactor(), and ArrheniusBase::setAllowNegativePreExponentialFactor().

## ◆ highRate()

ArrheniusRate & highRate | ( |  | ) |
| inline

Get reaction rate in the high-pressure limit.

Definition at line 249 of file Falloff.h.

References FalloffRate::m_highRate.

## ◆ setHighRate()

void setHighRate | ( | const ArrheniusRate & | high | ) |

Set reaction rate in the high-pressure limit.

Definition at line 103 of file Falloff.cpp.

References ArrheniusBase::check(), ArrheniusBase::preExponentialFactor(), and ArrheniusBase::setAllowNegativePreExponentialFactor().

## Member Data Documentation

## ◆ m_lowRate

ArrheniusRate m_lowRate
| protected

The reaction rate in the low-pressure limit.

Definition at line 257 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct(), and FalloffRate::lowRate().

## ◆ m_highRate

ArrheniusRate m_highRate
| protected

The reaction rate in the high-pressure limit.

Definition at line 258 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct(), and FalloffRate::highRate().

## ◆ m_chemicallyActivated

bool m_chemicallyActivated
| protected

Flag labeling reaction as chemically activated.

Definition at line 260 of file Falloff.h.

Referenced by FalloffRate::chemicallyActivated(), FalloffRate::evalFromStruct(), and FalloffRate::setChemicallyActivated().

## ◆ m_negativeA_ok

bool m_negativeA_ok
| protected

Flag indicating whether negative A values are permitted.

Definition at line 261 of file Falloff.h.

Referenced by FalloffRate::allowNegativePreExponentialFactor(), and FalloffRate::setAllowNegativePreExponentialFactor().

## ◆ m_rc_low

double m_rc_low
| protected

Evaluated reaction rate in the low-pressure limit.

Definition at line 263 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct().

## ◆ m_rc_high

double m_rc_high
| protected

Evaluated reaction rate in the high-pressure limit.

Definition at line 264 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct().

## ◆ m_work

vector_fp m_work
| protected

Work vector.

Definition at line 265 of file Falloff.h.

Referenced by FalloffRate::evalFromStruct(), SriRate::SriRate(), TroeRate::TroeRate(), and TsangRate::TsangRate().

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

- Falloff.h
- Falloff.cpp