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;
|
Info<< "Solving chemistry" << endl;
|
||||||
|
|
||||||
@ -10,17 +11,29 @@
|
|||||||
// turbulent time scale
|
// turbulent time scale
|
||||||
if (turbulentReaction)
|
if (turbulentReaction)
|
||||||
{
|
{
|
||||||
volScalarField tk
|
tmp<volScalarField> tepsilon(turbulence->epsilon());
|
||||||
(
|
const volScalarField& epsilon = tepsilon();
|
||||||
Cmix*sqrt(turbulence->muEff()/rho/turbulence->epsilon())
|
tmp<volScalarField> tmuEff(turbulence->muEff());
|
||||||
);
|
const volScalarField& muEff = tmuEff();
|
||||||
volScalarField tc
|
tmp<volScalarField> ttc(chemistry.tc());
|
||||||
(
|
const volScalarField& tc = ttc();
|
||||||
chemistry.tc()
|
|
||||||
);
|
|
||||||
|
|
||||||
// Chalmers PaSR model
|
forAll(epsilon, i)
|
||||||
kappa = (runTime.deltaT() + tc)/(runTime.deltaT() + tc + tk);
|
{
|
||||||
|
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
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@ -5,7 +5,9 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
||||||
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
||||||
-I$(LIB_SRC)/ODE/lnInclude \
|
-I$(LIB_SRC)/ODE/lnInclude \
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||||
|
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||||
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lcompressibleTurbulenceModel \
|
-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)/thermophysicalModels/radiationModels/lnInclude \
|
||||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
||||||
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
-I$(LIB_SRC)/regionModels/surfaceFilmModels/lnInclude \
|
||||||
-I$(LIB_SRC)/ODE/lnInclude
|
-I$(LIB_SRC)/ODE/lnInclude \
|
||||||
|
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||||
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-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)/thermophysicalModels/radiationModels/lnInclude \
|
||||||
-I$(LIB_SRC)/ODE/lnInclude \
|
-I$(LIB_SRC)/ODE/lnInclude \
|
||||||
-I$(LIB_SRC)/regionModels/regionModel/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 = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-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)/regionModels/surfaceFilmModels/lnInclude \
|
||||||
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
|
-I$(LIB_SRC)/lagrangian/basic/lnInclude \
|
||||||
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
|
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
|
||||||
-I$(LIB_SRC)/ODE/lnInclude
|
-I$(LIB_SRC)/ODE/lnInclude \
|
||||||
|
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||||
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-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)/thermophysicalModels/radiationModels/lnInclude \
|
||||||
-I$(LIB_SRC)/ODE/lnInclude \
|
-I$(LIB_SRC)/ODE/lnInclude \
|
||||||
-I$(LIB_SRC)/regionModels/regionModel/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 = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-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