Cantera 2.6.0
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
FalloffReaction2 Class Reference

A reaction that is first-order in [M] at low pressure, like a third-body reaction, but zeroth-order in [M] as pressure increases. More...

#include <Reaction.h>

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

Public Member Functions

 FalloffReaction2 (const Composition &reactants, const Composition &products, const Arrhenius2 &low_rate, const Arrhenius2 &high_rate, const ThirdBody &tbody)
 
virtual std::string type () const
 The type of reaction. More...
 
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...
 
virtual void validate ()
 Ensure that the rate constant and other parameters for this reaction are valid. More...
 
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 ()
 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)
 
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< ReactionRaterate ()
 Get reaction rate pointer. More...
 
void setRate (shared_ptr< ReactionRate > rate)
 Set reaction rate pointer. More...
 
shared_ptr< ThirdBodythirdBody ()
 Get pointer to third-body. More...
 
bool usesLegacy () const
 Indicate whether object uses legacy framework. More...
 

Public Attributes

Arrhenius2 low_rate
 The rate constant in the low-pressure limit. More...
 
Arrhenius2 high_rate
 The rate constant in the high-pressure limit. More...
 
ThirdBody third_body
 Relative efficiencies of third-body species in enhancing the reaction rate. More...
 
shared_ptr< FalloffRatefalloff
 Falloff function which determines how low_rate and high_rate are combined to determine the rate constant for the reaction. More...
 
bool allow_negative_pre_exponential_factor
 
Units low_rate_units
 The units of the low-pressure rate constant. More...
 
- 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...
 

Protected Member Functions

virtual std::pair< std::vector< std::string >, bool > undeclaredThirdBodies (const Kinetics &kin) const
 

Additional Inherited Members

- Protected Attributes inherited from Reaction
bool m_valid
 Flag indicating whether reaction is set up correctly. More...
 
shared_ptr< ReactionRatem_rate
 Reaction rate used by generic reactions. More...
 
shared_ptr< ThirdBodym_third_body
 Relative efficiencies of third-body species in enhancing the reaction rate (if applicable) More...
 

Detailed Description

A reaction that is first-order in [M] at low pressure, like a third-body reaction, but zeroth-order in [M] as pressure increases.

Definition at line 296 of file Reaction.h.

Constructor & Destructor Documentation

◆ FalloffReaction2() [1/2]

Definition at line 714 of file Reaction.cpp.

◆ FalloffReaction2() [2/2]

FalloffReaction2 ( const Composition reactants,
const Composition products,
const Arrhenius2 low_rate,
const Arrhenius2 high_rate,
const ThirdBody tbody 
)

Definition at line 723 of file Reaction.cpp.

Member Function Documentation

◆ type()

virtual std::string type ( ) const
inlinevirtual

The type of reaction.

Reimplemented from Reaction.

Reimplemented in ChemicallyActivatedReaction2.

Definition at line 304 of file Reaction.h.

Referenced by GasKinetics::addFalloffReaction().

◆ reactantString()

std::string reactantString ( ) const
virtual

The reactant side of the chemical equation for this reaction.

Reimplemented from Reaction.

Definition at line 738 of file Reaction.cpp.

References ThirdBody::default_efficiency, ThirdBody::efficiencies, Reaction::reactantString(), and FalloffReaction2::third_body.

◆ productString()

std::string productString ( ) const
virtual

The product side of the chemical equation for this reaction.

Reimplemented from Reaction.

Definition at line 749 of file Reaction.cpp.

References ThirdBody::default_efficiency, ThirdBody::efficiencies, Reaction::productString(), and FalloffReaction2::third_body.

◆ validate() [1/3]

void validate ( )
virtual

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

Reimplemented from Reaction.

Definition at line 760 of file Reaction.cpp.

References Reaction::equation(), FalloffReaction2::high_rate, Reaction::input, FalloffReaction2::low_rate, ArrheniusBase::preExponentialFactor(), and Reaction::validate().

◆ 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.

Reimplemented in ChemicallyActivatedReaction2.

Definition at line 776 of file Reaction.cpp.

References Reaction::calculateRateCoeffUnits(), FalloffReaction2::low_rate_units, Units::pow(), Reaction::rate_units, Kinetics::reactionPhaseIndex(), ThermoPhase::standardConcentrationUnits(), and Kinetics::thermo().

◆ 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 Reaction.

Reimplemented in ChemicallyActivatedReaction2.

Definition at line 784 of file Reaction.cpp.

References ThirdBody::default_efficiency, ThirdBody::efficiencies, FalloffReaction2::falloff, Arrhenius2::getParameters(), Reaction::getParameters(), FalloffReaction2::high_rate, FalloffReaction2::low_rate, FalloffReaction2::low_rate_units, Reaction::rate_units, AnyMap::setFlowStyle(), and FalloffReaction2::third_body.

Referenced by ChemicallyActivatedReaction2::getParameters().

◆ undeclaredThirdBodies()

std::pair< std::vector< std::string >, bool > undeclaredThirdBodies ( const Kinetics kin) const
protectedvirtual

Helper function returning vector of undeclared third body species and a boolean expression indicating whether the third body is specified. The function is used by the checkSpecies method and only needed as long as there is no unified approach to handle third body collision partners.

Parameters
kinKinetics object

Reimplemented from Reaction.

Definition at line 803 of file Reaction.cpp.

References ThirdBody::efficiencies, and FalloffReaction2::third_body.

◆ validate() [2/3]

void validate ( )
virtual

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

Reimplemented from Reaction.

Definition at line 78 of file Reaction.cpp.

◆ validate() [3/3]

virtual void validate ( Kinetics kin)
inlinevirtual

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

Reimplemented from Reaction.

Definition at line 82 of file Reaction.h.

Member Data Documentation

◆ low_rate

Arrhenius2 low_rate

The rate constant in the low-pressure limit.

Definition at line 317 of file Reaction.h.

Referenced by GasKinetics::addFalloffReaction(), FalloffReaction2::getParameters(), GasKinetics::modifyFalloffReaction(), and FalloffReaction2::validate().

◆ high_rate

Arrhenius2 high_rate

The rate constant in the high-pressure limit.

Definition at line 320 of file Reaction.h.

Referenced by GasKinetics::addFalloffReaction(), FalloffReaction2::getParameters(), GasKinetics::modifyFalloffReaction(), and FalloffReaction2::validate().

◆ third_body

ThirdBody third_body

Relative efficiencies of third-body species in enhancing the reaction rate.

Definition at line 323 of file Reaction.h.

Referenced by GasKinetics::addFalloffReaction(), FalloffReaction2::getParameters(), FalloffReaction2::productString(), FalloffReaction2::reactantString(), and FalloffReaction2::undeclaredThirdBodies().

◆ falloff

shared_ptr<FalloffRate> falloff

Falloff function which determines how low_rate and high_rate are combined to determine the rate constant for the reaction.

Definition at line 327 of file Reaction.h.

Referenced by GasKinetics::addFalloffReaction(), FalloffReaction2::getParameters(), and GasKinetics::modifyFalloffReaction().

◆ allow_negative_pre_exponential_factor

bool allow_negative_pre_exponential_factor

Definition at line 329 of file Reaction.h.

◆ low_rate_units

Units low_rate_units

The units of the low-pressure rate constant.

The units of the high-pressure rate constant are stored in rate_units.

Definition at line 333 of file Reaction.h.

Referenced by FalloffReaction2::calculateRateCoeffUnits(), ChemicallyActivatedReaction2::calculateRateCoeffUnits(), and FalloffReaction2::getParameters().


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