Cantera 2.6.0
|
A reaction occurring on an interface (for example, a SurfPhase or an EdgePhase) More...
#include <Reaction.h>
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) | |
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... | |
UnitStack | calculateRateCoeffUnits3 (const Kinetics &kin) |
Calculate the units of the rate constant. 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 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... | |
A reaction occurring on an interface (for example, a SurfPhase or an EdgePhase)
Definition at line 418 of file Reaction.h.
Definition at line 882 of file Reaction.cpp.
InterfaceReaction2 | ( | const Composition & | reactants, |
const Composition & | products, | ||
const Arrhenius2 & | rate, | ||
bool | isStick = false |
||
) |
Definition at line 889 of file Reaction.cpp.
|
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.
|
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().
|
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.
|
inlinevirtual |
The type of reaction.
Reimplemented from ElementaryReaction2.
Definition at line 430 of file Reaction.h.
|
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.
|
inlinevirtual |
Perform validation checks that need access to a complete Kinetics objects, for.
Reimplemented from ElementaryReaction2.
Definition at line 82 of file Reaction.h.
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().
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().
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().
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().