Cantera  3.0.0
Loading...
Searching...
No Matches
InterfaceRate< RateType, DataType > Class Template Reference

A class template for interface reaction rate specifications. More...

#include <InterfaceRate.h>

Inheritance diagram for InterfaceRate< RateType, DataType >:
[legend]

Detailed Description

template<class RateType, class DataType>
class Cantera::InterfaceRate< RateType, DataType >

A class template for interface reaction rate specifications.

Definition at line 366 of file InterfaceRate.h.

Public Member Functions

 InterfaceRate (const AnyMap &node, const UnitStack &rate_units)
 Constructor based on AnyMap content.
 
 InterfaceRate (const AnyMap &node)
 
unique_ptr< MultiRateBasenewMultiRate () const override
 
const string type () const override
 Identifier of reaction rate type.
 
void setParameters (const AnyMap &node, const UnitStack &rate_units) override
 
void getParameters (AnyMap &node) const override
 
void setContext (const Reaction &rxn, const Kinetics &kin) override
 
void updateFromStruct (const DataType &shared_data)
 Update reaction rate parameters.
 
double evalFromStruct (const DataType &shared_data) const
 Evaluate reaction rate.
 
double ddTScaledFromStruct (const DataType &shared_data) const
 Evaluate derivative of reaction rate with respect to temperature divided by reaction rate.
 
double preExponentialFactor () const override
 
double activationEnergy () const override
 
void addCoverageDependence (const string &sp, double a, double m, const vector< double > &e) override
 Add a coverage dependency for species sp, with exponential dependence a, power-law exponent m, and activation energy dependence e, where e is in Kelvin, that is, energy divided by the molar gas constant.
 
- Public Member Functions inherited from InterfaceRateBase
void setParameters (const AnyMap &node)
 Perform object setup based on AnyMap node information.
 
void getParameters (AnyMap &node) const
 Store parameters needed to reconstruct an identical object.
 
void setCoverageDependencies (const AnyMap &dependencies, const UnitSystem &units=UnitSystem())
 Set coverage dependencies based on AnyMap node information.
 
void getCoverageDependencies (AnyMap &dependencies, bool asVector=false) const
 Store parameters needed to reconstruct coverage dependencies.
 
virtual void addCoverageDependence (const string &sp, double a, double m, const vector< double > &e)
 Add a coverage dependency for species sp, with exponential dependence a, power-law exponent m, and activation energy dependence e, where e is in Kelvin, that is, energy divided by the molar gas constant.
 
bool exchangeCurrentDensityFormulation ()
 Boolean indicating whether rate uses exchange current density formulation.
 
void setContext (const Reaction &rxn, const Kinetics &kin)
 Build rate-specific parameters based on Reaction and Kinetics context.
 
void setSpecies (const vector< string > &species)
 Set association with an ordered list of all species associated with a given Kinetics object.
 
void updateFromStruct (const InterfaceData &shared_data)
 Update reaction rate parameters.
 
double voltageCorrection () const
 Calculate modifications for the forward reaction rate for interfacial charge transfer reactions.
 
bool usesElectrochemistry ()
 Boolean indicating whether rate uses electrochemistry.
 
double beta () const
 Return the charge transfer beta parameter.
 
double siteDensity () const
 Return site density [kmol/m^2].
 
void setSiteDensity (double siteDensity)
 Set site density [kmol/m^2].
 

Additional Inherited Members

- Protected Attributes inherited from InterfaceRateBase
double m_siteDensity
 Site density [kmol/m^2].
 
double m_acov
 Coverage contribution to pre-exponential factor.
 
double m_ecov
 Coverage contribution to activation energy.
 
double m_mcov
 Coverage term in reaction rate.
 
bool m_chargeTransfer
 Boolean indicating use of electrochemistry.
 
bool m_exchangeCurrentDensityFormulation
 
double m_beta
 Electrochemistry only.
 
double m_deltaPotential_RT
 Normalized electric potential energy change.
 
double m_deltaGibbs0_RT
 Normalized standard state Gibbs free energy change.
 
double m_prodStandardConcentrations
 Products of standard concentrations.
 
map< size_t, size_t > m_indices
 Map from coverage dependencies stored in this object to the index of the coverage species in the Kinetics object.
 
vector< string > m_cov
 Vector holding names of coverage species.
 
vector< double > m_ac
 Vector holding coverage-specific exponential dependence.
 
vector< vector< double > > m_ec
 Vector holding coverage-specific activation energy dependence as a 5-membered array of polynomial coeffcients starting from 0th-order to 4th-order coefficients.
 
vector< bool > m_lindep
 Vector holding boolean for linear dependence.
 
vector< double > m_mc
 Vector holding coverage-specific power-law exponents.
 

Constructor & Destructor Documentation

◆ InterfaceRate() [1/2]

template<class RateType , class DataType >
InterfaceRate ( const AnyMap node,
const UnitStack rate_units 
)
inline

Constructor based on AnyMap content.

Definition at line 375 of file InterfaceRate.h.

◆ InterfaceRate() [2/2]

template<class RateType , class DataType >
InterfaceRate ( const AnyMap node)
inlineexplicit

Definition at line 378 of file InterfaceRate.h.

Member Function Documentation

◆ newMultiRate()

template<class RateType , class DataType >
unique_ptr< MultiRateBase > newMultiRate ( ) const
inlineoverride

Definition at line 382 of file InterfaceRate.h.

◆ type()

template<class RateType , class DataType >
const string type ( ) const
inlineoverride

Identifier of reaction rate type.

Definition at line 387 of file InterfaceRate.h.

◆ setParameters()

template<class RateType , class DataType >
void setParameters ( const AnyMap node,
const UnitStack rate_units 
)
inlineoverride

Definition at line 391 of file InterfaceRate.h.

◆ getParameters()

template<class RateType , class DataType >
void getParameters ( AnyMap node) const
inlineoverride

Definition at line 396 of file InterfaceRate.h.

◆ setContext()

template<class RateType , class DataType >
void setContext ( const Reaction rxn,
const Kinetics kin 
)
inlineoverride

Definition at line 402 of file InterfaceRate.h.

◆ updateFromStruct()

template<class RateType , class DataType >
void updateFromStruct ( const DataType &  shared_data)
inline

Update reaction rate parameters.

Parameters
shared_datadata shared by all reactions of a given type

Definition at line 409 of file InterfaceRate.h.

◆ evalFromStruct()

template<class RateType , class DataType >
double evalFromStruct ( const DataType &  shared_data) const
inline

Evaluate reaction rate.

Parameters
shared_datadata shared by all reactions of a given type

Definition at line 418 of file InterfaceRate.h.

◆ ddTScaledFromStruct()

template<class RateType , class DataType >
double ddTScaledFromStruct ( const DataType &  shared_data) const
inline

Evaluate derivative of reaction rate with respect to temperature divided by reaction rate.

Parameters
shared_datadata shared by all reactions of a given type

Definition at line 430 of file InterfaceRate.h.

◆ preExponentialFactor()

template<class RateType , class DataType >
double preExponentialFactor ( ) const
inlineoverride

Definition at line 434 of file InterfaceRate.h.

◆ activationEnergy()

template<class RateType , class DataType >
double activationEnergy ( ) const
inlineoverride

Definition at line 439 of file InterfaceRate.h.

◆ addCoverageDependence()

template<class RateType , class DataType >
void addCoverageDependence ( const string &  sp,
double  a,
double  m,
const vector< double > &  e 
)
inlineoverridevirtual

Add a coverage dependency for species sp, with exponential dependence a, power-law exponent m, and activation energy dependence e, where e is in Kelvin, that is, energy divided by the molar gas constant.

Reimplemented from InterfaceRateBase.

Definition at line 443 of file InterfaceRate.h.


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