32 namespace combustionModels
37 template<
class ReactionThermo,
class ThermoType>
40 const word& modelType,
43 const word& combustionProperties
53 CEDC_(this->coeffs().getScalar(
"CEDC"))
59 template<
class ReactionThermo,
class ThermoType>
67 template<
class ReactionThermo,
class ThermoType>
81 template<
class ReactionThermo,
class ThermoType>
88 this->singleMixturePtr_->fresCorrect();
90 const label fuelI = this->singleMixturePtr_->fuelIndex();
92 const volScalarField& YFuel = this->thermo_.composition().Y()[fuelI];
96 if (this->thermo_.composition().contains(
"O2"))
102 *
min(YFuel, YO2/
s.value())
108 <<
"You selected a combustion model that requires O2 mass" 109 <<
" to be present in the mixture" 116 template<
class ReactionThermo,
class ThermoType>
121 this->coeffs().readEntry(
"CEDC", CEDC_);
errorManipArg< error, int > exit(error &err, const int errNo=1)
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
void correct()
Correct combustion rate.
compressible::turbulenceModel & turb
label k
Boltzmann constant.
tmp< volScalarField > rtTurb() const
Return the reciprocal of the turbulent mixing time scale.
psiReactionThermo & thermo
const dimensionSet dimVolume(pow3(dimLength))
A class for handling words, derived from Foam::string.
virtual bool read()
Update properties.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
Abstract base class for turbulence models (RAS, LES and laminar).
Info<< "Reading field U\"<< endl;volVectorField U(IOobject("U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);volScalarField rho(IOobject("rho", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), thermo.rho());volVectorField rhoU(IOobject("rhoU", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *U);volScalarField rhoE(IOobject("rhoE", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *(e+0.5 *magSqr(U)));surfaceScalarField pos(IOobject("pos", runTime.timeName(), mesh), mesh, dimensionedScalar("pos", dimless, 1.0));surfaceScalarField neg(IOobject("neg", runTime.timeName(), mesh), mesh, dimensionedScalar("neg", dimless, -1.0));surfaceScalarField phi("phi", fvc::flux(rhoU));Info<< "Creating turbulence model\"<< endl;autoPtr< compressible::turbulenceModel > turbulence(compressible::turbulenceModel::New(rho, U, phi, thermo))
Standard Eddy Dissipation Model based on the assumption that the reaction rates are controlled by the...
virtual bool read()
Update properties from given dictionary.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
Base class for combustion models using singleStepReactingMixture.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
A class for managing temporary objects.
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
virtual ~eddyDissipationModelBase()
Destructor.
static constexpr const zero Zero
Global zero (0)
const dimensionSet dimVelocity