Simple extension of ReactionThermo to handle reaction kinetics in addition to the equilibrium thermodynamics already handled. More...
Public Member Functions | |
TypeName ("Reaction") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, Reaction, dictionary,(const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const dictionary &dict),(species, thermoDatabase, dict)) | |
declareRunTimeSelectionTable (autoPtr, Reaction, objectRegistry,(const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const objectRegistry &ob, const dictionary &dict),(species, thermoDatabase, ob, dict)) | |
Reaction (const speciesTable &species, const List< specieCoeffs > &lhs, const List< specieCoeffs > &rhs, const HashPtrTable< ReactionThermo > &thermoDatabase) | |
Construct from components. More... | |
Reaction (const Reaction< ReactionThermo > &, const speciesTable &species) | |
Construct as copy given new speciesTable. More... | |
Reaction (const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const dictionary &dict) | |
Construct from dictionary. More... | |
virtual autoPtr< Reaction< ReactionThermo > > | clone () const =0 |
Construct and return a clone. More... | |
virtual autoPtr< Reaction< ReactionThermo > > | clone (const speciesTable &species) const =0 |
Construct and return a clone with new speciesTable. More... | |
virtual | ~Reaction () |
Destructor. More... | |
scalar | Tlow () const |
Return the lower temperature limit for the reaction. More... | |
scalar | Thigh () const |
Return the upper temperature limit for the reaction. More... | |
virtual void | preEvaluate () const =0 |
Pre-evaluation hook. More... | |
virtual void | postEvaluate () const =0 |
Post-evaluation hook. More... | |
void | omega (const scalar p, const scalar T, const scalarField &c, const label li, scalarField &dcdt) const |
Net reaction rate for individual species. More... | |
scalar | omega (const scalar p, const scalar T, const scalarField &c, const label li, scalar &omegaf, scalar &omegar) const |
Net reaction rate. More... | |
virtual scalar | kf (const scalar p, const scalar T, const scalarField &c, const label li) const =0 |
Forward rate constant. More... | |
virtual scalar | kr (const scalar kfwd, const scalar p, const scalar T, const scalarField &c, const label li) const =0 |
Reverse rate constant from the given forward rate constant. More... | |
virtual scalar | kr (const scalar p, const scalar T, const scalarField &c, const label li) const =0 |
Reverse rate constant. More... | |
void | dwdc (const scalar p, const scalar T, const scalarField &c, const label li, scalarSquareMatrix &J, scalarField &dcdt, scalar &omegaI, scalar &kfwd, scalar &kbwd, const bool reduced, const List< label > &c2s) const |
Derivative of the net reaction rate for each species involved. More... | |
void | dwdT (const scalar p, const scalar T, const scalarField &c, const label li, const scalar omegaI, const scalar kfwd, const scalar kbwd, scalarSquareMatrix &J, const bool reduced, const List< label > &c2s, const label indexT) const |
Derivative of the net reaction rate for each species involved. More... | |
virtual scalar | dkfdT (const scalar p, const scalar T, const scalarField &c, const label li) const =0 |
Temperature derivative of forward rate. More... | |
virtual scalar | dkrdT (const scalar p, const scalar T, const scalarField &c, const label li, const scalar dkfdT, const scalar kr) const =0 |
Temperature derivative of reverse rate. More... | |
virtual const List< Tuple2< label, scalar > > & | beta () const =0 |
Third-body efficiencies (beta = 1-alpha) More... | |
virtual void | dcidc (const scalar p, const scalar T, const scalarField &c, const label li, scalarField &dcidc) const =0 |
Species concentration derivative of the pressure dependent term. More... | |
virtual scalar | dcidT (const scalar p, const scalar T, const scalarField &c, const label li) const =0 |
Temperature derivative of the pressure dependent term. More... | |
virtual void | write (Ostream &) const |
Write. More... | |
void | operator= (const Reaction< ReactionThermo > &)=delete |
Disallow default bitwise assignment. More... | |
Public Member Functions inherited from reaction | |
reaction (const speciesTable &species, const List< specieCoeffs > &lhs, const List< specieCoeffs > &rhs) | |
Construct from components. More... | |
reaction (const reaction &, const speciesTable &species) | |
Construct as copy given new speciesTable. More... | |
reaction (const speciesTable &species, const dictionary &dict) | |
Construct from dictionary. More... | |
~reaction () | |
Destructor. More... | |
const word & | name () const |
Return the name of the reaction. More... | |
const List< specieCoeffs > & | lhs () const |
Return the components of the left hand side. More... | |
const List< specieCoeffs > & | rhs () const |
Return the components of the right hand side. More... | |
const speciesTable & | species () const |
Return the specie list. More... | |
void | write (Ostream &) const |
Write. More... | |
void | operator= (const reaction &)=delete |
Disallow default bitwise assignment. More... | |
Static Public Member Functions | |
static autoPtr< Reaction< ReactionThermo > > | New (const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const dictionary &dict) |
Return a pointer to new patchField created on freestore. More... | |
static autoPtr< Reaction< ReactionThermo > > | New (const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const objectRegistry &ob, const dictionary &dict) |
Return a pointer to new patchField created on freestore. More... | |
static autoPtr< Reaction< ReactionThermo > > | New (const speciesTable &species, const PtrList< ReactionThermo > &speciesThermo, const dictionary &dict) |
Return a pointer to new patchField created on freestore from dict. More... | |
Static Public Attributes | |
static scalar | TlowDefault |
Default temperature limits of applicability of reaction rates. More... | |
static scalar | ThighDefault |
Static Public Attributes inherited from reaction | |
static label | nUnNamedReactions |
Number of un-named reactions. More... | |
Friends | |
Ostream & | operator (Ostream &, const Reaction< ReactionThermo > &) |
Simple extension of ReactionThermo to handle reaction kinetics in addition to the equilibrium thermodynamics already handled.
Definition at line 55 of file Reaction.H.
Reaction | ( | const speciesTable & | species, |
const List< specieCoeffs > & | lhs, | ||
const List< specieCoeffs > & | rhs, | ||
const HashPtrTable< ReactionThermo > & | thermoDatabase | ||
) |
Construct from components.
Definition at line 95 of file Reaction.C.
Referenced by Reaction< ReactionThermo >::Reaction().
Reaction | ( | const Reaction< ReactionThermo > & | r, |
const speciesTable & | species | ||
) |
Construct as copy given new speciesTable.
Definition at line 113 of file Reaction.C.
References Reaction< ReactionThermo >::Reaction().
Reaction | ( | const speciesTable & | species, |
const HashPtrTable< ReactionThermo > & | thermoDatabase, | ||
const dictionary & | dict | ||
) |
Construct from dictionary.
Definition at line 127 of file Reaction.C.
References Reaction< ReactionThermo >::New().
|
inlinevirtual |
Destructor.
Definition at line 197 of file Reaction.H.
References Reaction< ReactionThermo >::beta(), Foam::constant::universal::c, Reaction< ReactionThermo >::dcidc(), Reaction< ReactionThermo >::dcidT(), Reaction< ReactionThermo >::dkfdT(), Reaction< ReactionThermo >::dkrdT(), Reaction< ReactionThermo >::dwdc(), Reaction< ReactionThermo >::dwdT(), Reaction< ReactionThermo >::kf(), Reaction< ReactionThermo >::kr(), reaction::name(), Reaction< ReactionThermo >::omega(), Reaction< ReactionThermo >::operator=(), p, Reaction< ReactionThermo >::postEvaluate(), Reaction< ReactionThermo >::preEvaluate(), Foam::T(), Reaction< ReactionThermo >::Thigh(), Reaction< ReactionThermo >::Tlow(), and Reaction< ReactionThermo >::write().
TypeName | ( | "Reaction< ReactionThermo >" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
Reaction< ReactionThermo > | , | ||
dictionary | , | ||
(const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const dictionary &dict) | , | ||
(species, thermoDatabase, dict) | |||
) |
declareRunTimeSelectionTable | ( | autoPtr | , |
Reaction< ReactionThermo > | , | ||
objectRegistry | , | ||
(const speciesTable &species, const HashPtrTable< ReactionThermo > &thermoDatabase, const objectRegistry &ob, const dictionary &dict) | , | ||
(species, thermoDatabase, ob, dict) | |||
) |
Construct and return a clone.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
|
pure virtual |
Construct and return a clone with new speciesTable.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
|
static |
Return a pointer to new patchField created on freestore.
from dictionary
Definition at line 147 of file Reaction.C.
References dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, dictionary::lookup(), Foam::nl, and string::removeTrailing().
Referenced by Reaction< ReactionThermo >::New(), and Reaction< ReactionThermo >::Reaction().
|
static |
Return a pointer to new patchField created on freestore.
from objectRegistry and dictionary
Definition at line 190 of file Reaction.C.
References dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, dictionary::lookup(), Foam::compressible::New(), Reaction< ReactionThermo >::New(), Foam::nl, and string::removeTrailing().
|
static |
Return a pointer to new patchField created on freestore from dict.
This is used to construct a single reaction given a speciesThermo list from which a temporary thermoDatabase is created.
Definition at line 259 of file Reaction.C.
References Foam::clone(), forAll, HashTable< T *, Key, Hash >::insert(), Foam::name(), and Foam::compressible::New().
|
inline |
Return the lower temperature limit for the reaction.
Definition at line 31 of file ReactionI.H.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
inline |
Return the upper temperature limit for the reaction.
Definition at line 38 of file ReactionI.H.
References Ostream::write().
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Pre-evaluation hook.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Post-evaluation hook.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
void omega | ( | const scalar | p, |
const scalar | T, | ||
const scalarField & | c, | ||
const label | li, | ||
scalarField & | dcdt | ||
) | const |
Net reaction rate for individual species.
Definition at line 290 of file Reaction.C.
References forAll.
Referenced by standardChemistryModel< ThermoType >::calculateRR(), TDACChemistryModel< ThermoType >::omega(), standardChemistryModel< ThermoType >::omega(), EFA< ThermoType >::reduceMechanism(), DRG< ThermoType >::reduceMechanism(), PFA< ThermoType >::reduceMechanism(), DAC< ThermoType >::reduceMechanism(), DRGEP< ThermoType >::reduceMechanism(), standardChemistryModel< ThermoType >::tc(), Reaction< ReactionThermo >::write(), and Reaction< ReactionThermo >::~Reaction().
Foam::scalar omega | ( | const scalar | p, |
const scalar | T, | ||
const scalarField & | c, | ||
const label | li, | ||
scalar & | omegaf, | ||
scalar & | omegar | ||
) | const |
Net reaction rate.
Definition at line 319 of file Reaction.C.
References Reaction< ReactionThermo >::dwdc(), forAll, Foam::max(), Foam::min(), and Foam::pow().
|
pure virtual |
Forward rate constant.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Reverse rate constant from the given forward rate constant.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
void dwdc | ( | const scalar | p, |
const scalar | T, | ||
const scalarField & | c, | ||
const label | li, | ||
scalarSquareMatrix & | J, | ||
scalarField & | dcdt, | ||
scalar & | omegaI, | ||
scalar & | kfwd, | ||
scalar & | kbwd, | ||
const bool | reduced, | ||
const List< label > & | c2s | ||
) | const |
Derivative of the net reaction rate for each species involved.
w.r.t. the species concentration
Definition at line 352 of file Reaction.C.
References Reaction< ReactionThermo >::dwdT(), UList< T >::first(), forAll, Foam::max(), Foam::notNull(), Foam::pow(), and List< T >::size().
Referenced by TDACChemistryModel< ThermoType >::jacobian(), standardChemistryModel< ThermoType >::jacobian(), Reaction< ReactionThermo >::omega(), and Reaction< ReactionThermo >::~Reaction().
void dwdT | ( | const scalar | p, |
const scalar | T, | ||
const scalarField & | c, | ||
const label | li, | ||
const scalar | omegaI, | ||
const scalar | kfwd, | ||
const scalar | kbwd, | ||
scalarSquareMatrix & | J, | ||
const bool | reduced, | ||
const List< label > & | c2s, | ||
const label | indexT | ||
) | const |
Derivative of the net reaction rate for each species involved.
w.r.t. the temperature
Definition at line 499 of file Reaction.C.
References forAll, Foam::max(), and Foam::pow().
Referenced by Reaction< ReactionThermo >::dwdc(), TDACChemistryModel< ThermoType >::jacobian(), standardChemistryModel< ThermoType >::jacobian(), and Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Temperature derivative of forward rate.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Temperature derivative of reverse rate.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
Third-body efficiencies (beta = 1-alpha)
non-empty only for third-body reactions with enhanced molecularity (alpha != 1)
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Species concentration derivative of the pressure dependent term.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
pure virtual |
Temperature derivative of the pressure dependent term.
Implemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, ReversibleReaction< ReactionThermo, ReactionRate >, and ReactionProxy< ReactionThermo >.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
virtual |
Write.
Reimplemented in NonEquilibriumReversibleReaction< ReactionThermo, ReactionRate >, IrreversibleReaction< ReactionThermo, ReactionRate >, and ReversibleReaction< ReactionThermo, ReactionRate >.
Definition at line 282 of file Reaction.C.
References Reaction< ReactionThermo >::omega(), and Foam::vtkWriteOps::write().
Referenced by ReactionList< Foam::sutherlandTransport >::write(), and Reaction< ReactionThermo >::~Reaction().
Disallow default bitwise assignment.
Referenced by Reaction< ReactionThermo >::~Reaction().
|
static |
Default temperature limits of applicability of reaction rates.
Definition at line 79 of file Reaction.H.
|
static |
Definition at line 79 of file Reaction.H.