mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: Updated PaSR model for laminar case and better code-re-use
This commit is contained in:
@ -1,3 +1,4 @@
|
||||
if (chemistry.chemistry())
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
@ -10,17 +11,29 @@
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
volScalarField tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
volScalarField tc
|
||||
(
|
||||
chemistry.tc()
|
||||
);
|
||||
tmp<volScalarField> tepsilon(turbulence->epsilon());
|
||||
const volScalarField& epsilon = tepsilon();
|
||||
tmp<volScalarField> tmuEff(turbulence->muEff());
|
||||
const volScalarField& muEff = tmuEff();
|
||||
tmp<volScalarField> ttc(chemistry.tc());
|
||||
const volScalarField& tc = ttc();
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
forAll(epsilon, i)
|
||||
{
|
||||
if (epsilon[i] > 0)
|
||||
{
|
||||
// Chalmers PaSR model
|
||||
scalar tk = Cmix.value()*Foam::sqrt(muEff[i]/rho[i]/epsilon[i]);
|
||||
kappa[i] =
|
||||
(runTime.deltaTValue() + tc[i])
|
||||
/(runTime.deltaTValue() + tc[i] + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Return to laminar combustion
|
||||
kappa[i] = 1.0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -5,7 +5,9 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
||||
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lcompressibleTurbulenceModel \
|
||||
|
||||
@ -1,28 +0,0 @@
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
volScalarField tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
volScalarField tc(chemistry.tc());
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
||||
@ -19,7 +19,9 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
|
||||
@ -1,32 +0,0 @@
|
||||
if (chemistry.chemistry())
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
||||
@ -19,7 +19,9 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
|
||||
@ -1,31 +0,0 @@
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
||||
@ -18,7 +18,9 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
|
||||
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
|
||||
@ -1,32 +0,0 @@
|
||||
if (chemistry.chemistry())
|
||||
{
|
||||
Info << "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
||||
@ -18,7 +18,9 @@ EXE_INC = \
|
||||
-I$(LIB_SRC)/thermophysicalModels/radiationModels/lnInclude \
|
||||
-I$(LIB_SRC)/ODE/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude
|
||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||
|
||||
|
||||
EXE_LIBS = \
|
||||
-lfiniteVolume \
|
||||
|
||||
@ -1,31 +0,0 @@
|
||||
{
|
||||
Info<< "Solving chemistry" << endl;
|
||||
|
||||
chemistry.solve
|
||||
(
|
||||
runTime.value() - runTime.deltaTValue(),
|
||||
runTime.deltaTValue()
|
||||
);
|
||||
|
||||
// turbulent time scale
|
||||
if (turbulentReaction)
|
||||
{
|
||||
DimensionedField<scalar, volMesh> tk
|
||||
(
|
||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
||||
);
|
||||
DimensionedField<scalar, volMesh> tc
|
||||
(
|
||||
chemistry.tc()().dimensionedInternalField()
|
||||
);
|
||||
|
||||
// Chalmers PaSR model
|
||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
||||
}
|
||||
else
|
||||
{
|
||||
kappa = 1.0;
|
||||
}
|
||||
|
||||
chemistrySh = kappa*chemistry.Sh()();
|
||||
}
|
||||
Reference in New Issue
Block a user