38 #ifndef chemistryModel_H 39 #define chemistryModel_H 59 template<
class CompType,
class ThermoType>
75 template<
class DeltaTType>
76 scalar solve(
const DeltaTType& deltaT);
145 inline scalar
Treact()
const;
213 const label reactionI,
219 virtual scalar solve(
const scalar deltaT);
label nSpecie() const
The number of species.
const PtrList< Reaction< ThermoType > > & reactions() const
The reactions.
virtual label nEqns() const
Number of ODE's to solve.
virtual tmp< volScalarField > tc() const
Return the chemical time scale.
Mesh data needed to do the Finite Volume discretisation.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
scalar Treact() const
Temperature below which the reaction rates are assumed 0.
A class for handling words, derived from string.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
virtual void derivatives(const scalar t, const scalarField &c, scalarField &dcdt) const
Calculate the derivatives in dydx.
virtual void jacobian(const scalar t, const scalarField &c, scalarField &dcdt, scalarSquareMatrix &dfdc) const
Calculate the Jacobian of the system.
TypeName("chemistryModel")
Runtime type information.
scalar Treact_
Temperature below which the reaction rates are assumed 0.
PtrList< DimensionedField< scalar, volMesh > > & RR()
Write access to chemical source terms.
const PtrList< ThermoType > & specieThermo_
Thermodynamic data of the species.
label nReaction_
Number of reactions.
virtual tmp< scalarField > omega(const scalarField &c, const scalar T, const scalar p) const
dc/dt = omega, rate of change in concentration, for each species
const PtrList< Reaction< ThermoType > > & reactions_
Reactions.
Abstract base class for the systems of ordinary differential equations.
virtual void calculate()
Calculates the reaction rates.
PtrList< volScalarField > & Y_
Reference to the field of specie mass fractions.
Simple extension of ReactionThermo to handle reaction kinetics in addition to the equilibrium thermod...
virtual scalar omegaI(label iReaction, const scalarField &c, const scalar T, const scalar p, scalar &pf, scalar &cf, label &lRef, scalar &pr, scalar &cr, label &rRef) const
Return the reaction rate for iReaction and the reference.
const PtrList< ThermoType > & specieThermo() const
Thermodynamic data of the species.
virtual tmp< volScalarField > dQ() const
Return the heat release, i.e. enthalpy/sec [kg/m2/s3].
const dimensionedScalar c
Speed of light in a vacuum.
label nSpecie_
Number of species.
virtual ~chemistryModel()
Destructor.
virtual tmp< DimensionedField< scalar, volMesh > > calculateRR(const label reactionI, const label speciei) const
Return reaction rate of the speciei in reactionI.
PtrList< DimensionedField< scalar, volMesh > > RR_
List of reaction rate per specie [kg/m3/s].
Extends base chemistry model by adding a thermo package, and ODE functions. Introduces chemistry equa...
label nReaction() const
The number of reactions.
virtual tmp< volScalarField > Sh() const
Return source for enthalpy equation [kg/m/s3].
A class for managing temporary objects.