51Foam::laminarFlameSpeedModels::Gulders::Gulders
59 coeffsDict_(
dict.optionalSubDict(
typeName +
"Coeffs").subDict(fuel_)),
60 W_(coeffsDict_.get<scalar>(
"W")),
61 eta_(coeffsDict_.get<scalar>(
"eta")),
62 xi_(coeffsDict_.get<scalar>(
"xi")),
63 f_(coeffsDict_.get<scalar>(
"f")),
64 alpha_(coeffsDict_.get<scalar>(
"alpha")),
65 beta_(coeffsDict_.get<scalar>(
"beta"))
77inline Foam::scalar Foam::laminarFlameSpeedModels::Gulders::SuRef
93inline Foam::scalar Foam::laminarFlameSpeedModels::Gulders::Su0pTphi
101 static const scalar Tref = 300.0;
102 static const scalar pRef = 1.013e5;
104 return SuRef(
phi)*
pow((Tu/Tref), alpha_)*
pow((
p/pRef), beta_)*(1 - f_*Yres);
108Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::Gulders::Su0pTphi
122 auto& Su0 = tSu0.ref();
126 Su0[celli] = Su0pTphi(
p[celli], Tu[celli],
phi, 0.0);
133 forAll(Su0Bf[patchi], facei)
135 Su0Bf[patchi][facei] =
138 p.boundaryField()[patchi][facei],
139 Tu.boundaryField()[patchi][facei],
150Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::Gulders::Su0pTphi
164 auto& Su0 = tSu0.ref();
168 Su0[celli] = Su0pTphi(
p[celli], Tu[celli],
phi[celli], 0.0);
175 forAll(Su0Bf[patchi], facei)
177 Su0Bf[patchi][facei] =
180 p.boundaryField()[patchi][facei],
181 Tu.boundaryField()[patchi][facei],
182 phi.boundaryField()[patchi][facei],
195 if (psiuReactionThermo_.composition().contains(
"ft"))
197 const volScalarField& ft = psiuReactionThermo_.composition().Y(
"ft");
201 psiuReactionThermo_.p(),
202 psiuReactionThermo_.Tu(),
205 "stoichiometricAirFuelMassRatio",
dimless, psiuReactionThermo_
206 )*ft/
max(1 - ft, SMALL)
213 psiuReactionThermo_.p(),
214 psiuReactionThermo_.Tu(),
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
static tmp< GeometricField< scalar, fvPatchField, volMesh > > New(const word &name, IOobjectOption::registerOption regOpt, const Mesh &mesh, const dimensionSet &dims, const word &patchFieldType=fvPatchField< scalar >::calculatedType())
GeometricBoundaryField< scalar, fvPatchField, volMesh > Boundary
@ NO_REGISTER
Do not request registration (bool: false).
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Laminar flame speed obtained from Gulder's correlation.
virtual ~Gulders()
Destructor.
tmp< volScalarField > operator()() const
Return the laminar flame speed [m/s].
Abstract class for laminar flame speed.
const psiuReactionThermo & psiuReactionThermo_
scalar equivalenceRatio_
Equivalence ratio of a homogeneous mixture.
Foam::psiuReactionThermo.
A class for managing temporary objects.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
Namespace for laminar flame speed models.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedScalar exp(const dimensionedScalar &ds)
const dimensionSet dimless
Dimensionless.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
const dimensionSet dimVelocity
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
const word GlobalIOList< Tuple2< scalar, vector > >::typeName("scalarVectorTable")
static constexpr const zero Zero
Global zero (0).
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
#define forAll(list, i)
Loop across all elements in list.