Cantera 2.6.0

Public Member Functions | Protected Member Functions | List of all members
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]
Collaboration diagram for InterfaceRate< RateType, DataType >:
[legend]

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

## Protected Member Functions
template<typename T = RateType, typename std::enable_if< has_update< T >::value, bool >::type = true>
void | _update (const DataType &shared_data)
| Helper function to process updates for rate types that implement the `updateFromStruct` method. More...
template<typename T = RateType, typename std::enable_if<!has_update< T >::value, bool >::type = true>
void | _update (const DataType &shared_data)
| Helper function for rate types that do not implement `updateFromStruct`. More...

## Additional Inherited Members
Protected Attributes inherited from InterfaceRateBase
double | m_siteDensity
| Site density [kmol/m^2]. More...
double | m_acov
| Coverage contribution to pre-exponential factor. More...
double | m_ecov
| Coverage contribution to activation energy. More...
double | m_mcov
| Coverage term in reaction rate. More...
bool | m_chargeTransfer
| Boolean indicating use of electrochemistry. More...
bool | m_exchangeCurrentDensityFormulation
double | m_beta
| Electrochemistry only. More...
double | m_deltaPotential_RT
| Normalized electric potential energy change. More...
double | m_deltaGibbs0_RT
| Normalized standard state Gibbs free energy change. More...
double | m_prodStandardConcentrations
| Products of standard concentrations. More...
std::map< size_t, size_t > | m_indices
| Map holding indices of coverage species. More...
std::vector< std::string > | m_cov
| Vector holding names of coverage species. More...
vector_fp | m_ac
| Vector holding coverage-specific exponential dependence. More...
vector_fp | m_ec
| Vector holding coverage-specific activation energy dependence. More...
vector_fp | m_mc
| Vector holding coverage-specific power-law exponents. More...

## Detailed Description

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

A class template for interface reaction rate specifications.

Definition at line 353 of file InterfaceRate.h.

## Constructor & Destructor Documentation

## ◆ InterfaceRate() [1/2]

InterfaceRate | ( | const AnyMap & | node,
|  | const UnitStack & | rate_units
| ) |  |
| inline

Constructor based on AnyMap content.

Definition at line 362 of file InterfaceRate.h.

## ◆ InterfaceRate() [2/2]

InterfaceRate | ( | const AnyMap & | node | ) |
| inline explicit

Definition at line 365 of file InterfaceRate.h.

## Member Function Documentation

## ◆ newMultiRate()

unique_ptr< MultiRateBase > newMultiRate | ( |  | ) | const
| inline override

Definition at line 369 of file InterfaceRate.h.

## ◆ type()

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

Identifier of reaction rate type.

Definition at line 375 of file InterfaceRate.h.

## ◆ setParameters()

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

Definition at line 379 of file InterfaceRate.h.

## ◆ getParameters()

virtual void getParameters | ( | AnyMap & | node | ) | const
| inline override virtual

Definition at line 386 of file InterfaceRate.h.

## ◆ setContext()

virtual void setContext | ( | const Reaction & | rxn,
|  | const Kinetics & | kin
| ) |  |
| inline override virtual

Definition at line 392 of file InterfaceRate.h.

## ◆ updateFromStruct()

void updateFromStruct | ( | const DataType & | shared_data | ) |
| inline

Update reaction rate parameters.

Parameters

  shared_data | data shared by all reactions of a given type

Definition at line 399 of file InterfaceRate.h.

References InterfaceRate< RateType, DataType >::_update(), and InterfaceRateBase::updateFromStruct().

## ◆ evalFromStruct()

double evalFromStruct | ( | const DataType & | shared_data | ) | const
| inline

Evaluate reaction rate.

Parameters

  shared_data | data shared by all reactions of a given type

Definition at line 406 of file InterfaceRate.h.

References InterfaceRateBase::m_acov, InterfaceRateBase::m_chargeTransfer, InterfaceRateBase::m_ecov, InterfaceRateBase::m_mcov, and InterfaceRateBase::voltageCorrection().

## ◆ ddTScaledFromStruct()

double ddTScaledFromStruct | ( | const DataType & | shared_data | ) | const
| inline

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

Parameters

  shared_data | data shared by all reactions of a given type

Definition at line 418 of file InterfaceRate.h.

## ◆ preExponentialFactor()

virtual double preExponentialFactor | ( |  | ) | const
| inline override virtual

Definition at line 422 of file InterfaceRate.h.

## ◆ activationEnergy()

virtual double activationEnergy | ( |  | ) | const
| inline override virtual

Definition at line 427 of file InterfaceRate.h.

## ◆ _update() [1/2]

void _update | ( | const DataType & | shared_data | ) |
| inline protected

Helper function to process updates for rate types that implement the `updateFromStruct` method.

Definition at line 436 of file InterfaceRate.h.

Referenced by InterfaceRate< RateType, DataType >::updateFromStruct().

## ◆ _update() [2/2]

void _update | ( | const DataType & | shared_data | ) |
| inline protected

Helper function for rate types that do not implement `updateFromStruct`.

Does nothing, but exists to allow generic implementations of update().

Definition at line 444 of file InterfaceRate.h.

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

- InterfaceRate.h