39#ifndef basicSolidChemistryModel_H
40#define basicSolidChemistryModel_H
60class basicSolidChemistryModel
62 public basicChemistryModel
67 basicSolidChemistryModel(
const basicSolidChemistryModel&);
70 void operator=(
const basicSolidChemistryModel&) =
delete;
84 TypeName(
"basicSolidChemistryModel");
95 basicSolidChemistryModel,
145 const label reactionI,
164 virtual void setCellReacting(
const label celli,
const bool active) = 0;
DimensionedField< scalar, volMesh > Internal
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
solidReactionThermo & solidThermo_
Solid thermo.
static autoPtr< basicSolidChemistryModel > New(solidReactionThermo &thermo)
Selector.
virtual tmp< volScalarField::Internal > RRs() const =0
Return total solids mass source term [kg/m3/s].
virtual tmp< volScalarField::Internal > calculateRR(const label reactionI, const label speciei) const
Returns the reaction rate of the speciei in reactionI.
virtual const volScalarField::Internal & RR(const label i) const
Return const access to the total source terms.
virtual void setCellReacting(const label celli, const bool active)=0
Set reacting status of cell, celli.
virtual void calculate()=0
Calculates the reaction rates.
virtual tmp< volScalarField > gasHs(const volScalarField &p, const volScalarField &T, const label i) const =0
Return sensible enthalpy for gas i [J/Kg].
solidReactionThermo reactionThermo
Thermo type.
solidReactionThermo & solidThermo()
Return access to the solid thermo package.
TypeName("basicSolidChemistryModel")
Runtime type information.
virtual const volScalarField::Internal & RRg(const label i) const =0
Return chemical source terms for gases [kg/m3/s].
virtual const volScalarField::Internal & RRs(const label i) const =0
Return chemical source terms for solids [kg/m3/s].
virtual tmp< volScalarField::Internal > RRg() const =0
Return total gases mass source term [kg/m3/s].
virtual ~basicSolidChemistryModel()
Destructor.
virtual tmp< DimensionedField< scalar, volMesh > > RRsHs() const =0
Return net solid sensible enthalpy [J/Kg].
declareRunTimeSelectionTable(autoPtr, basicSolidChemistryModel, thermo,(solidReactionThermo &thermo),(thermo))
Declare run-time constructor selection tables.
virtual const speciesTable & gasTable() const =0
Return specie Table for gases.
Mesh data needed to do the Finite Volume discretisation.
Foam::solidReactionThermo.
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
A class for managing temporary objects.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
hashedWordList speciesTable
A table of species as a hashedWordList.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes).
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.