| Cantera 3.0.0

Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
TsangRate Class Referencefinal
Chemical Kinetics » Reactions and Reaction Rates » Falloff Parameterizations

The 1- or 2-parameter Tsang falloff parameterization. More...

`#include <Falloff.h>`

Inheritance diagram for TsangRate:
[legend]

## Detailed Description

The 1- or 2-parameter Tsang falloff parameterization.

The Tsang falloff model is adapted from that of Troe. It provides a constant or linear in temperature value for \( F_{cent} \):

\[ F_{cent} = A + B*T \]

The value of \( F_{cent} \) is then applied to Troe's model for the determination of the value of \( F(T, P_r) \):

\[ \log_{10} F(T, P_r) = \frac{\log_{10} F_{cent}(T)}{1 + f_1^2} \]

where

\[ f_1 = \frac{\log_{10} P_r + C}{N - 0.14 (\log_{10} P_r + C)} \]

\[ C = -0.4 - 0.67 \log_{10} F_{cent} \]

\[ N = 0.75 - 1.27 \log_{10} F_{cent} \]

References:

- Example of reaction database developed by Tsang utilizing this format [tsang1991]
- Example of Chemkin implementation of Tsang format (supplemental materials) [lucassen2011]

Definition at line 542 of file Falloff.h.

## Public Member Functions
| TsangRate ()
| Constructor.
| TsangRate (const AnyMap &node, const UnitStack &rate_units={})
| TsangRate (const ArrheniusRate &low, const ArrheniusRate &high, const vector< double > &c)
unique_ptr< MultiRateBase > | newMultiRate () const override
| Create a rate evaluator for reactions of a particular derived type.
void | setFalloffCoeffs (const vector< double > &c) override
| Set coefficients used by parameterization.
void | getFalloffCoeffs (vector< double > &c) const override
| Retrieve coefficients of the falloff parameterization.
void | updateTemp (double T, double *work) const override
| Update the temperature parameters in the representation.
double | F (double pr, const double *work) const override
| The falloff function.
size_t | workSize () const override
| The size of the work array required.
const string | subType () const override
| String identifying sub-type of reaction rate specialization.
size_t | nParameters () const override
| Returns the number of parameters used by this parameterization.
void | setParameters (const AnyMap &node, const UnitStack &rate_units) override
| Set parameters.
void | getParameters (double *params) const override
| Sets params to contain, in order,.
void | getParameters (AnyMap &node) const override
| Get parameters.
Public Member Functions inherited from FalloffRate
| FalloffRate (const AnyMap &node, const UnitStack &rate_units={})
void | init (const vector< double > &c)
| Initialize.
double | evalF (double T, double conc3b)
| Evaluate falloff function at current conditions.
const string | type () const override
| String identifying reaction rate specialization.
double | evalFromStruct (const FalloffData &shared_data)
| Evaluate reaction rate.
void | check (const string &equation) override
| Check basic syntax and settings of reaction rate expression.
void | validate (const string &equation, const Kinetics &kin) override
| Validate 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.
bool | chemicallyActivated () const
| Get flag indicating whether reaction is chemically activated.
void | setChemicallyActivated (bool activated)
| Set flag indicating whether reaction is chemically activated.
ArrheniusRate & | lowRate ()
| Get reaction rate in the low-pressure limit.
void | setLowRate (const ArrheniusRate &low)
| Set reaction rate in the low-pressure limit.
ArrheniusRate & | highRate ()
| Get reaction rate in the high-pressure limit.
void | setHighRate (const ArrheniusRate &high)
| Set reaction rate in the high-pressure limit.
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.
const Units & | conversionUnits () const
| Get the units for converting the leading term in the reaction rate expression.
virtual void | setRateUnits (const UnitStack &rate_units)
| Set the units of 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.

## Protected Attributes
double | m_a
| parameter a in the Tsang F_cent formulation. Dimensionless
double | m_b
| parameter b in the Tsang F_cent formulation. [K^-1]
Protected Attributes inherited from FalloffRate
ArrheniusRate | m_lowRate
| The reaction rate in the low-pressure limit.
ArrheniusRate | m_highRate
| The reaction rate in the high-pressure limit.
bool | m_chemicallyActivated = false
| Flag labeling reaction as chemically activated.
bool | m_negativeA_ok = false
| Flag indicating whether negative A values are permitted.
double | m_rc_low = NAN
| Evaluated reaction rate in the low-pressure limit.
double | m_rc_high = NAN
| Evaluated reaction rate in the high-pressure limit.
vector< double > | m_work
| Work vector.
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.

## Additional Inherited Members

## Constructor & Destructor Documentation

## ◆ TsangRate() [1/3]

TsangRate | ( |  | ) |
| inline

Constructor.

Definition at line 546 of file Falloff.h.

## ◆ TsangRate() [2/3]

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

Definition at line 477 of file Falloff.cpp.

## ◆ TsangRate() [3/3]

TsangRate | ( | const ArrheniusRate & | low,
|  | const ArrheniusRate & | high,
|  | const vector< double > & | c
| ) |  |
| inline

Definition at line 552 of file Falloff.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 make_unique<MultiRate<RateType, DataType>>();
Cantera::TsangRate::newMultiRate
unique_ptr< MultiRateBase > newMultiRate() const override
Create a rate evaluator for reactions of a particular derived type.
Definition Falloff.h:560

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 560 of file Falloff.h.

## ◆ setFalloffCoeffs()

void setFalloffCoeffs | ( | const vector< double > & | c | ) |
| override virtual

Set coefficients used by parameterization.

Parameters

  c | Vector of one or two doubles: The doubles are the parameters, a and (optionally) b of the Tsang F_cent parameterization

Reimplemented from FalloffRate.

Definition at line 483 of file Falloff.cpp.

## ◆ getFalloffCoeffs()

void getFalloffCoeffs | ( | vector< double > & | c | ) | const
| override 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 from FalloffRate.

Definition at line 501 of file Falloff.cpp.

## ◆ updateTemp()

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

Update the temperature parameters in the representation.

Parameters

  T | Temperature (Kelvin)
  work | Vector of working space, length 1, representing the temperature-dependent part of the parameterization.

Reimplemented from FalloffRate.

Definition at line 512 of file Falloff.cpp.

## ◆ F()

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

The falloff function.

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 from FalloffRate.

Definition at line 518 of file Falloff.cpp.

## ◆ workSize()

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

The size of the work array required.

Deprecated:
  To be removed after Cantera 3.0; unused.

Reimplemented from FalloffRate.

Definition at line 583 of file Falloff.h.

## ◆ subType()

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

String identifying sub-type of reaction rate specialization.

Reimplemented from ReactionRate.

Definition at line 587 of file Falloff.h.

## ◆ nParameters()

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

Returns the number of parameters used by this parameterization.

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

Reimplemented from FalloffRate.

Definition at line 591 of file Falloff.h.

## ◆ setParameters()

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

Set parameters.

Parameters

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

Reimplemented from FalloffRate.

Definition at line 528 of file Falloff.cpp.

## ◆ getParameters() [1/2]

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

Sets params to contain, in order,.

\[ (A, B) \]

Deprecated:
  To be removed after Cantera 3.0; superseded by getFalloffCoeffs()

Reimplemented from FalloffRate.

Definition at line 546 of file Falloff.cpp.

## ◆ getParameters() [2/2]

void getParameters | ( | AnyMap & | node | ) | const
| override 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 FalloffRate.

Definition at line 553 of file Falloff.cpp.

## Member Data Documentation

## ◆ m_a

double m_a
| protected

parameter a in the Tsang F_cent formulation. Dimensionless

Definition at line 607 of file Falloff.h.

## ◆ m_b

double m_b
| protected

parameter b in the Tsang F_cent formulation. [K^-1]

Definition at line 610 of file Falloff.h.

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

- Falloff.h
- Falloff.cpp