35 const word& modelType,
40 Type(modelType, mesh, phaseName),
41 integrateReactionRate_
43 this->coeffs().lookupOrDefault(
"integrateReactionRate",
true)
46 if (integrateReactionRate_)
48 Info<<
" using integrated reaction rate" <<
endl;
52 Info<<
" using instantaneous reaction rate" <<
endl;
70 return this->chemistryPtr_->tc();
79 if (integrateReactionRate_)
81 if (fv::localEulerDdt::enabled(this->
mesh()))
84 fv::localEulerDdt::localRDeltaT(this->
mesh());
86 if (this->coeffs().
found(
"maxIntegrationTime"))
88 scalar maxIntegrationTime
93 this->chemistryPtr_->solve
95 min(1.0/rDeltaT, maxIntegrationTime)()
100 this->chemistryPtr_->solve((1.0/rDeltaT)());
105 this->chemistryPtr_->solve(this->
mesh().time().deltaTValue());
110 this->chemistryPtr_->calculate();
126 const label specieI =
129 Su += this->chemistryPtr_->RR(specieI);
146 IOobject::groupName(typeName +
":dQ", this->phaseName_),
155 zeroGradientFvPatchScalarField::typeName
161 tdQ() = this->chemistryPtr_->dQ();
178 IOobject::groupName(typeName +
":Sh", this->phaseName_),
187 zeroGradientFvPatchScalarField::typeName
193 tSh() = this->chemistryPtr_->Sh();
205 this->coeffs().lookup(
"integrateReactionRate")
206 >> integrateReactionRate_;
word member() const
Return member (name without the extension)
Mesh data needed to do the Finite Volume discretisation.
virtual bool read()
Update properties from given dictionary.
Calculate the matrix for implicit and explicit sources.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
Laminar combustion model.
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.
const dimensionSet dimEnergy
A special matrix type and solver, designed for finite volume solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
tmp< GeometricField< Type, fvPatchField, volMesh > > Su(const GeometricField< Type, fvPatchField, volMesh > &su, const GeometricField< Type, fvPatchField, volMesh > &vf)
fvMatrix< scalar > fvScalarMatrix
tmp< volScalarField > tc() const
Return the chemical time scale.
Ostream & endl(Ostream &os)
Add newline and flush stream.
stressControl lookup("compactNormalStress") >> compactNormalStress
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
PtrList< volScalarField > & Y
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
virtual tmp< volScalarField > Sh() const
Return source for enthalpy equation [kg/m/s3].
const dimensionSet dimVolume(pow3(dimLength))
bool read(const char *, int32_t &)
virtual tmp< volScalarField > dQ() const
Heat release rate calculated from fuel consumption rate matrix.
psiReactionThermo & thermo
virtual tmp< fvScalarMatrix > R(volScalarField &Y) const
Fuel consumption rate matrix.
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A class for managing temporary objects.
virtual void correct()
Correct combustion rate.
virtual ~laminar()
Destructor.