35 namespace combustionModels
47 const word& modelType,
50 const word& combustionProperties
60 integrateReactionRate_
62 this->coeffs().lookupOrDefault(
"integrateReactionRate", true)
66 this->coeffs().lookupOrDefault(
"maxIntegrationTime", vGreat)
70 this->coeffs().lookupOrDefault(
"outerCorrect", false)
75 if (integrateReactionRate_)
77 Info<<
" using integrated reaction rate" <<
endl;
81 Info<<
" using instantaneous reaction rate" <<
endl;
98 (integrateReactionRate_ || !outerCorrect_)
99 && timeIndex_ == this->mesh().time().
timeIndex()
105 if (integrateReactionRate_)
112 chemistryPtr_->solve(
min(1/rDeltaT, maxIntegrationTime_)());
116 const scalar deltaT = this->mesh().time().deltaTValue();
118 chemistryPtr_->solve(
min(deltaT, maxIntegrationTime_));
123 chemistryPtr_->calculate();
126 timeIndex_ = this->mesh().time().timeIndex();
133 return chemistryPtr_->RR()[speciei];
144 Su += chemistryPtr_->RR()[specieI];
152 return chemistryPtr_->Qdot();
160 integrateReactionRate_ =
161 this->coeffs().lookupOrDefault(
"integrateReactionRate",
true);
162 maxIntegrationTime_ =
163 this->coeffs().lookupOrDefault(
"maxIntegrationTime", vGreat);
165 this->coeffs().lookupOrDefault(
"outerCorrect",
false);
Macros for easy insertion into run-time selection tables.
Generic GeometricField class.
static word member(const word &name)
Return member (name without the extension)
Base class for chemistry models.
Base class for combustion models.
virtual bool read()
Update properties from given dictionary.
Laminar combustion model.
laminar(const word &modelType, const fluidMulticomponentThermo &thermo, const compressibleMomentumTransportModel &turb, const word &combustionProperties)
Construct from components.
virtual void correct()
Correct combustion rate.
virtual ~laminar()
Destructor.
virtual tmp< volScalarField::Internal > R(const label speciei) const
Specie consumption rate field.
virtual tmp< volScalarField > Qdot() const
Heat release rate [kg/m/s^3].
virtual bool read()
Update properties from given dictionary.
Base class for single-phase compressible turbulence models.
A list of keyword definitions, which are a keyword followed by any number of values (e....
Base-class for multi-component fluid thermodynamic properties.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
static const volScalarField & localRDeltaT(const fvMesh &mesh)
Return the reciprocal of the local time-step.
static bool enabled(const fvMesh &mesh)
Return true if LTS is enabled.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
A class for handling words, derived from string.
Calculate the matrix for implicit and explicit sources.
defineTypeNameAndDebug(diffusion, 0)
addToRunTimeSelectionTable(combustionModel, diffusion, dictionary)
autoPtr< CompressibleMomentumTransportModel > New(const volScalarField &rho, const volVectorField &U, const surfaceScalarField &phi, const viscosity &viscosity)
tmp< VolField< Type > > Su(const VolField< Type > &su, const VolField< Type > &vf)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Ostream & endl(Ostream &os)
Add newline and flush stream.
fvMatrix< scalar > fvScalarMatrix
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
const dimensionSet dimTime
const dimensionSet dimMass
PtrList< volScalarField > & Y
fluidMulticomponentThermo & thermo