Cantera  3.1.0a1
ReactionData Struct Referenceabstract

Data container holding shared data used for ReactionRate calculation. More...

#include <ReactionData.h>

Inheritance diagram for ReactionData:
[legend]

Detailed Description

Data container holding shared data used for ReactionRate calculation.

The base class defines variables and methods used by all specializations.

Definition at line 26 of file ReactionData.h.

Public Member Functions

virtual void update (double T)
 Update data container based on temperature T More...
 
virtual void update (double T, double extra)
 Update data container based on temperature T and an extra parameter. More...
 
virtual void update (double T, const vector< double > &extra)
 Update data container based on temperature T and a vector parameter extra More...
 
virtual bool update (const ThermoPhase &phase, const Kinetics &kin)=0
 Update data container based on thermodynamic phase state. More...
 
void perturbTemperature (double deltaT)
 Perturb temperature of data container. More...
 
virtual void restore ()
 Restore data container after a perturbation. More...
 
virtual void resize (size_t nSpecies, size_t nReactions, size_t nPhases)
 Update number of species, reactions and phases. More...
 
virtual void invalidateCache ()
 Force shared data and reaction rates to be updated next time. More...
 

Public Attributes

double temperature = 1.0
 temperature More...
 
double logT = 0.0
 logarithm of temperature More...
 
double recipT = 1.0
 inverse of temperature More...
 

Protected Attributes

double m_temperature_buf = -1.0
 buffered temperature More...
 

Member Function Documentation

◆ update() [1/4]

virtual void update ( double  T)
inlinevirtual

Update data container based on temperature T

Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.

Reimplemented in TwoTempPlasmaData, ReactionDataDelegator, PlogData, InterfaceData, FalloffData, ChebyshevData, and BlowersMaselData.

Definition at line 36 of file ReactionData.h.

◆ update() [2/4]

virtual void update ( double  T,
double  extra 
)
inlinevirtual

Update data container based on temperature T and an extra parameter.

Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.

Reimplemented in TwoTempPlasmaData, PlogData, ChebyshevData, and FalloffData.

Definition at line 48 of file ReactionData.h.

◆ update() [3/4]

virtual void update ( double  T,
const vector< double > &  extra 
)
inlinevirtual

Update data container based on temperature T and a vector parameter extra

Only used in conjunction with MultiRateBase::evalSingle / ReactionRate::eval. This method allows for testing of a reaction rate expression outside of Kinetics reaction rate evaluators.

Warning
This method is an experimental part of the Cantera API and may be changed or removed without notice.

Reimplemented in InterfaceData.

Definition at line 62 of file ReactionData.h.

◆ update() [4/4]

virtual bool update ( const ThermoPhase phase,
const Kinetics kin 
)
pure virtual

Update data container based on thermodynamic phase state.

This update mechanism is used by Kinetics reaction rate evaluators.

Returns
A boolean element indicating whether the evalFromStruct method needs to be called (assuming previously-calculated values were cached)

Implemented in TwoTempPlasmaData, ReactionDataDelegator, PlogData, FalloffData, ChebyshevData, BlowersMaselData, ArrheniusData, and InterfaceData.

◆ perturbTemperature()

void perturbTemperature ( double  deltaT)
inline

Perturb temperature of data container.

The method is used for the evaluation of numerical derivatives.

Parameters
deltaTrelative temperature perturbation

Definition at line 80 of file ReactionData.h.

◆ restore()

virtual void restore ( )
inlinevirtual

Restore data container after a perturbation.

Reimplemented in PlogData, FalloffData, and ChebyshevData.

Definition at line 90 of file ReactionData.h.

◆ resize()

virtual void resize ( size_t  nSpecies,
size_t  nReactions,
size_t  nPhases 
)
inlinevirtual

Update number of species, reactions and phases.

Reimplemented in InterfaceData, FalloffData, and BlowersMaselData.

Definition at line 100 of file ReactionData.h.

◆ invalidateCache()

virtual void invalidateCache ( )
inlinevirtual

Force shared data and reaction rates to be updated next time.

This is called by functions that change quantities affecting rate calculations that are normally assumed to be constant, like the reaction rate parameters or the number of reactions.

Reimplemented in TwoTempPlasmaData, PlogData, FalloffData, and ChebyshevData.

Definition at line 106 of file ReactionData.h.

Member Data Documentation

◆ temperature

double temperature = 1.0

temperature

Definition at line 110 of file ReactionData.h.

◆ logT

double logT = 0.0

logarithm of temperature

Definition at line 111 of file ReactionData.h.

◆ recipT

double recipT = 1.0

inverse of temperature

Definition at line 112 of file ReactionData.h.

◆ m_temperature_buf

double m_temperature_buf = -1.0
protected

buffered temperature

Definition at line 115 of file ReactionData.h.


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