Cantera 2.6.0

Public Member Functions | Public Attributes | List of all members
InterfaceReaction2 Class Reference

A reaction occurring on an interface (for example, a SurfPhase or an EdgePhase) More...

`#include <Reaction.h>`

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

## Public Member Functions
| InterfaceReaction2 (const Composition &reactants, const Composition &products, const Arrhenius2 &rate, bool isStick=false)
virtual void | calculateRateCoeffUnits (const Kinetics &kin)
| Calculate the units of the rate constant. More...
virtual void | getParameters (AnyMap &reactionNode) const
| Store the parameters of a Reaction needed to reconstruct an identical object using the newReaction(AnyMap&, Kinetics&) function. More...
virtual void | validate (Kinetics &kin)
| Perform validation checks that need access to a complete Kinetics objects, for. More...
virtual std::string | type () const
| The type of reaction. More...
virtual void | validate ()
| Ensure that the rate constant and other parameters for this reaction are valid. More...
virtual void | validate (Kinetics &kin)
| Perform validation checks that need access to a complete Kinetics objects, for. More...
Public Member Functions inherited from ElementaryReaction2
| ElementaryReaction2 (const Composition &reactants, const Composition products, const Arrhenius2 &rate)
virtual void | validate ()
| Ensure that the rate constant and other parameters for this reaction are valid. More...
virtual void | getParameters (AnyMap &reactionNode) const
| Store the parameters of a Reaction needed to reconstruct an identical object using the newReaction(AnyMap&, Kinetics&) function. More...
virtual std::string | type () const
| The type of reaction. More...
virtual void | validate ()
| Ensure that the rate constant and other parameters for this reaction are valid. More...
virtual void | validate (Kinetics &kin)
| Perform validation checks that need access to a complete Kinetics objects, for. More...
Public Member Functions inherited from Reaction
| Reaction (const Composition &reactants, const Composition &products, shared_ptr< ReactionRate > rate={})
| Reaction (const AnyMap &node, const Kinetics &kin)
| Construct a Reaction and it's corresponding ReactionRate based on AnyMap (YAML) input. More...
| Reaction (int type)
| Reaction (int type, const Composition &reactants, const Composition &products)
virtual std::string | reactantString () const
| The reactant side of the chemical equation for this reaction. More...
virtual std::string | productString () const
| The product side of the chemical equation for this reaction. More...
std::string | equation () const
| The chemical equation for this reaction. More...
virtual void | setEquation (const std::string &equation, const Kinetics *kin=0)
| Set the reactants and products based on the reaction equation. More...
virtual std::string | type () const
| The type of reaction. More...
virtual void | calculateRateCoeffUnits (const Kinetics &kin)
| Calculate the units of the rate constant. More...
UnitStack | calculateRateCoeffUnits3 (const Kinetics &kin)
| Calculate the units of the rate constant. More...
virtual void | validate ()
| Ensure that the rate constant and other parameters for this reaction are valid. More...
virtual void | validate (Kinetics &kin)
| Perform validation checks that need access to a complete Kinetics objects, for. More...
AnyMap | parameters (bool withInput=true) const
| Return the parameters such that an identical Reaction could be reconstructed using the newReaction() function. More...
virtual void | setParameters (const AnyMap &node, const Kinetics &kin)
| Set up reaction based on AnyMap node More...
bool | valid () const
| Get validity flag of reaction. More...
void | setValid (bool valid)
| Set validity flag of reaction. More...
void | checkBalance (const Kinetics &kin) const
| Check that the specified reaction is balanced (same number of atoms for each element in the reactants and products). More...
bool | checkSpecies (const Kinetics &kin) const
| Verify that all species involved in the reaction are defined in the Kinetics object. More...
bool | usesElectrochemistry (const Kinetics &kin) const
| Check whether reaction uses electrochemistry. More...
shared_ptr< ReactionRate > | rate ()
| Get reaction rate pointer. More...
void | setRate (shared_ptr< ReactionRate > rate)
| Set reaction rate pointer. More...
shared_ptr< ThirdBody > | thirdBody ()
| Get pointer to third-body. More...
bool | usesLegacy () const
| Indicate whether object uses legacy framework. More...

## Public Attributes
std::map< std::string, CoverageDependency > | coverage_deps
| Adjustments to the Arrhenius rate expression dependent on surface species coverages. More...
bool | is_sticking_coefficient
| Set to true if `rate` is a parameterization of the sticking coefficient rather than the forward rate constant. More...
bool | use_motz_wise_correction
| Set to true if `rate` is a sticking coefficient which should be translated into a rate coefficient using the correction factor developed by Motz & Wise for reactions with high (near-unity) sticking coefficients. More...
std::string | sticking_species
| For reactions with multiple non-surface species, the sticking species needs to be explicitly identified. More...
Public Attributes inherited from ElementaryReaction2
Arrhenius2 | rate
bool | allow_negative_pre_exponential_factor
Public Attributes inherited from Reaction
int | reaction_type
| Type of the reaction. More...
Composition | reactants
| Reactant species and stoichiometric coefficients. More...
Composition | products
| Product species and stoichiometric coefficients. More...
Composition | orders
| Forward reaction order with respect to specific species. More...
std::string | id
| An identification string for the reaction, used in some filtering operations. More...
bool | reversible
| True if the current reaction is reversible. False otherwise. More...
bool | duplicate
| True if the current reaction is marked as duplicate. More...
bool | allow_nonreactant_orders
| True if reaction orders can be specified for non-reactant species. More...
bool | allow_negative_orders
| True if negative reaction orders are allowed. Default is `false`. More...
AnyMap | input
| Input data used for specific models. More...
Units | rate_units
| The units of the rate constant. More...

## Additional Inherited Members
Protected Member Functions inherited from Reaction
virtual void | getParameters (AnyMap &reactionNode) const
| Store the parameters of a Reaction needed to reconstruct an identical object using the newReaction(AnyMap&, Kinetics&) function. More...
virtual std::pair< std::vector< std::string >, bool > | undeclaredThirdBodies (const Kinetics &kin) const
Protected Attributes inherited from Reaction
bool | m_valid
| Flag indicating whether reaction is set up correctly. More...
shared_ptr< ReactionRate > | m_rate
| Reaction rate used by generic reactions. More...
shared_ptr< ThirdBody > | m_third_body
| Relative efficiencies of third-body species in enhancing the reaction rate (if applicable) More...

## Detailed Description

A reaction occurring on an interface (for example, a SurfPhase or an EdgePhase)

Definition at line 418 of file Reaction.h.

## Constructor & Destructor Documentation

## ◆ InterfaceReaction2() [1/2]

InterfaceReaction2 | ( |  | ) |

Definition at line 882 of file Reaction.cpp.

## ◆ InterfaceReaction2() [2/2]

InterfaceReaction2 | ( | const Composition & | reactants,
|  | const Composition & | products,
|  | const Arrhenius2 & | rate,
|  | bool | isStick = `false`
| ) |  |

Definition at line 889 of file Reaction.cpp.

## Member Function Documentation

## ◆ calculateRateCoeffUnits()

void calculateRateCoeffUnits | ( | const Kinetics & | kin | ) |
| virtual

Calculate the units of the rate constant.

These are determined by the units of the standard concentration of the reactant species' phases and the phase where the reaction occurs. Sets the value of rate_units.

Reimplemented from Reaction.

Definition at line 900 of file Reaction.cpp.

References Reaction::calculateRateCoeffUnits(), AnyMap::hasKey(), Reaction::input, InterfaceReaction2::is_sticking_coefficient, and Reaction::rate_units.

## ◆ getParameters()

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

Store the parameters of a Reaction needed to reconstruct an identical object using the newReaction(AnyMap&, Kinetics&) function.

Does not include user-defined fields available in the input map.

Reimplemented from ElementaryReaction2.

Reimplemented in ElectrochemicalReaction2.

Definition at line 908 of file Reaction.cpp.

References InterfaceReaction2::coverage_deps, AnyMap::erase(), ElementaryReaction2::getParameters(), InterfaceReaction2::is_sticking_coefficient, InterfaceReaction2::sticking_species, and InterfaceReaction2::use_motz_wise_correction.

Referenced by ElectrochemicalReaction2::getParameters().

## ◆ validate() [1/3]

void validate | ( | Kinetics & | kin | ) |
| virtual

Perform validation checks that need access to a complete Kinetics objects, for.

Reimplemented from Reaction.

Definition at line 934 of file Reaction.cpp.

References InterfaceReaction2::is_sticking_coefficient.

## ◆ type()

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

The type of reaction.

Reimplemented from ElementaryReaction2.

Definition at line 430 of file Reaction.h.

## ◆ validate() [2/3]

void validate | ( |  | ) |
| virtual

Ensure that the rate constant and other parameters for this reaction are valid.

Reimplemented from ElementaryReaction2.

Definition at line 78 of file Reaction.cpp.

## ◆ validate() [3/3]

virtual void validate | ( | Kinetics & | kin | ) |
| inline virtual

Perform validation checks that need access to a complete Kinetics objects, for.

Reimplemented from ElementaryReaction2.

Definition at line 82 of file Reaction.h.

## Member Data Documentation

## ◆ coverage_deps

std::map<std::string, CoverageDependency> coverage_deps

Adjustments to the Arrhenius rate expression dependent on surface species coverages.

Three coverage parameters (a, E, m) are used for each species on which the rate depends. See SurfaceArrhenius for details on the parameterization.

Definition at line 438 of file Reaction.h.

Referenced by InterfaceKinetics::addReaction(), InterfaceKinetics::buildSurfaceArrhenius(), and InterfaceReaction2::getParameters().

## ◆ is_sticking_coefficient

bool is_sticking_coefficient

Set to true if `rate` is a parameterization of the sticking coefficient rather than the forward rate constant.

Definition at line 442 of file Reaction.h.

Referenced by InterfaceKinetics::buildSurfaceArrhenius(), InterfaceReaction2::calculateRateCoeffUnits(), InterfaceReaction2::getParameters(), and InterfaceReaction2::validate().

## ◆ use_motz_wise_correction

bool use_motz_wise_correction

Set to true if `rate` is a sticking coefficient which should be translated into a rate coefficient using the correction factor developed by Motz & Wise for reactions with high (near-unity) sticking coefficients.

Defaults to 'false'.

Definition at line 448 of file Reaction.h.

Referenced by InterfaceKinetics::buildSurfaceArrhenius(), and InterfaceReaction2::getParameters().

## ◆ sticking_species

std::string sticking_species

For reactions with multiple non-surface species, the sticking species needs to be explicitly identified.

Definition at line 452 of file Reaction.h.

Referenced by InterfaceKinetics::buildSurfaceArrhenius(), and InterfaceReaction2::getParameters().

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

- Reaction.h
- Reaction.cpp