66 #ifndef chemistryModel_H 67 #define chemistryModel_H 87 template<
class ThermoType>
97 class reactionEvaluationScope
103 reactionEvaluationScope
110 forAll(chemistry_.reactions_, i)
112 chemistry_.reactions_[i].preEvaluate();
116 ~reactionEvaluationScope()
118 forAll(chemistry_.reactions_, i)
120 chemistry_.reactions_[i].postEvaluate();
192 template<
class DeltaTType>
193 scalar
solve(
const DeltaTType& deltaT);
251 const label reactionI,
257 virtual scalar solve(
const scalar deltaT);
virtual tmp< volScalarField::Internal > calculateRR(const label reactionI, const label speciei) const
Return reaction rate of the speciei in reactionI.
#define forAll(list, i)
Loop across all elements in list.
virtual void derivatives(const scalar t, const scalarField &YTp, const label li, scalarField &dYTpdt) const
Calculate the derivatives in dydx.
virtual tmp< volScalarField > tc() const
Return the chemical time scale.
jacobianType
Enumeration for the type of Jacobian to be calculated by the.
bool active(const label i) const
Return true if specie i is active.
A 1D vector of objects of type <T> with a fixed size <Size>.
const PtrList< volScalarField > & Y() const
Return a reference to the list of mass fraction fields.
virtual ~chemistryModel()
Destructor.
A simple wrapper around bool so that it can be read as a word: true/false, on/off, yes/no, y/n, t/f, or none/any.
Base-class for multi-component fluid thermodynamic properties.
Switch chemistry() const
Chemistry activation switch.
const PtrList< ThermoType > & specieThermos() const
Thermodynamic data of the species.
Switch chemistry_
Chemistry activation switch.
void operator=(const chemistryModel &)=delete
Disallow default bitwise assignment.
virtual void jacobian(const scalar t, const scalarField &YTp, const label li, scalarField &dYTpdt, scalarSquareMatrix &J) const
Calculate the Jacobian of the system.
Foam::multiComponentMixture.
chemistryModel(const fluidReactionThermo &thermo)
Construct from thermo.
TypeName("chemistryModel")
Runtime type information.
virtual label nReaction() const
The number of reactions.
const multiComponentMixture< ThermoType > & mixture() const
Return reference to the mixture.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
List of templated reactions.
virtual void calculate()
Calculates the reaction rates.
const fluidReactionThermo & thermo() const
Return const access to the thermo.
Extends base chemistry model by adding a thermo package, and ODE functions. Introduces chemistry equa...
An abstract class for chemistry tabulation.
void setActive(const label i)
Set specie i active.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
An abstract class for methods of chemical mechanism reduction.
virtual tmp< volScalarField > Qdot() const
Return the heat release rate [kg/m/s^3].
A class for managing temporary objects.
Extends base chemistry model adding an ODESystem and the reduction maps needed for tabulation...
const PtrList< Reaction< ThermoType > > & reactions() const
The reactions.