ThermophysicalTransportModels: New library to handle the transport of energy and species

The simplistic energy transport support in compressibleTurbulenceModels has been
abstracted and separated into the new ThermophysicalTransportModels library in
order to provide a more general interface to support complex energy and specie
transport models, in particular multi-component diffusion.  Currently only the
Fourier for laminar and eddyDiffusivity for RAS and LES turbulent flows are
provided but the interface is general and the set of models will be expanded in
the near future.

The ThermalDiffusivity and EddyDiffusivity modelling layers remain in
compressibleTurbulenceModels but will be removed shortly and the alphat boundary
conditions will be moved to ThermophysicalTransportModels.
This commit is contained in:
Henry Weller
2020-04-10 18:18:51 +01:00
parent 7f5144312e
commit 25b34809c7
143 changed files with 3833 additions and 134 deletions

View File

@ -26,6 +26,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/laminarFlameSpeed/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/laminarFlameSpeed/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/dynamicFvMesh/lnInclude \ -I$(LIB_SRC)/dynamicFvMesh/lnInclude \
@ -36,12 +37,13 @@ EXE_INC = \
EXE_LIBS = \ EXE_LIBS = \
-lengine \ -lengine \
-lmeshTools \ -lmeshTools \
-lturbulenceModels \
-lcompressibleTurbulenceModels \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \
-lreactionThermophysicalModels \ -lreactionThermophysicalModels \
-lspecie \ -lspecie \
-lturbulenceModels \
-lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-llaminarFlameSpeedModels \ -llaminarFlameSpeedModels \
-lfiniteVolume \ -lfiniteVolume \
-ldynamicFvMesh \ -ldynamicFvMesh \

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -70,6 +70,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "psiuReactionThermo.H" #include "psiuReactionThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "laminarFlameSpeed.H" #include "laminarFlameSpeed.H"
#include "XiModel.H" #include "XiModel.H"
#include "PDRDragModel.H" #include "PDRDragModel.H"
@ -140,6 +141,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -57,6 +57,15 @@ autoPtr<compressible::RASModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::RASThermophysicalTransportModel>
thermophysicalTransport
(
compressible::RASThermophysicalTransportModel::New
(
turbulence()
)
);
Info<< "Creating field dpdt\n" << endl; Info<< "Creating field dpdt\n" << endl;
volScalarField dpdt volScalarField dpdt

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), hea) - fvm::laplacian(thermophysicalTransport->alphaEff(), hea)
+ fvOptions(rho, hea) + fvOptions(rho, hea)
); );

View File

@ -16,7 +16,7 @@ if (ign.ignited())
)*rho/thermo.rhou() )*rho/thermo.rhou()
: -dpdt*rho/thermo.rhou() : -dpdt*rho/thermo.rhou()
) )
- fvm::laplacian(turbulence->alphaEff(), heau) - fvm::laplacian(thermophysicalTransport->alphaEff(), heau)
// These terms cannot be used in partially-premixed combustion due to // These terms cannot be used in partially-premixed combustion due to
// the resultant inconsistency between ft and heau transport. // the resultant inconsistency between ft and heau transport.

View File

@ -6,6 +6,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/laminarFlameSpeed/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/laminarFlameSpeed/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
@ -15,6 +16,7 @@ EXE_LIBS = \
-lengine \ -lengine \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \
-lreactionThermophysicalModels \ -lreactionThermophysicalModels \

View File

@ -10,6 +10,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/laminarFlameSpeed/lnInclude -I$(LIB_SRC)/thermophysicalModels/laminarFlameSpeed/lnInclude
EXE_LIBS = \ EXE_LIBS = \
@ -20,6 +21,7 @@ EXE_LIBS = \
-lengine \ -lengine \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \
-lreactionThermophysicalModels \ -lreactionThermophysicalModels \

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -53,6 +53,7 @@ Description
#include "engineMesh.H" #include "engineMesh.H"
#include "psiuReactionThermo.H" #include "psiuReactionThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "laminarFlameSpeed.H" #include "laminarFlameSpeed.H"
#include "ignition.H" #include "ignition.H"
#include "Switch.H" #include "Switch.H"
@ -127,6 +128,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -52,6 +52,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "psiuReactionThermo.H" #include "psiuReactionThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "laminarFlameSpeed.H" #include "laminarFlameSpeed.H"
#include "ignition.H" #include "ignition.H"
#include "Switch.H" #include "Switch.H"
@ -117,6 +118,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -52,7 +52,7 @@ if (ign.ignited())
+ mvConvection->fvmDiv(phi, b) + mvConvection->fvmDiv(phi, b)
+ fvm::div(phiSt, b) + fvm::div(phiSt, b)
- fvm::Sp(fvc::div(phiSt), b) - fvm::Sp(fvc::div(phiSt), b)
- fvm::laplacian(turbulence->alphaEff(), b) - fvm::laplacian(thermophysicalTransport->alphaEff(), b)
== ==
fvOptions(rho, b) fvOptions(rho, b)
); );
@ -103,7 +103,10 @@ if (ign.ignited())
surfaceScalarField phiXi surfaceScalarField phiXi
( (
phiSt phiSt
- fvc::interpolate(fvc::laplacian(turbulence->alphaEff(), b)/mgb)*nf - fvc::interpolate
(
fvc::laplacian(thermophysicalTransport->alphaEff(), b)/mgb
)*nf
+ fvc::interpolate(rho)*fvc::interpolate(Su*(1.0/Xi - Xi))*nf + fvc::interpolate(rho)*fvc::interpolate(Su*(1.0/Xi - Xi))*nf
); );

View File

@ -58,6 +58,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating field dpdt\n" << endl; Info<< "Creating field dpdt\n" << endl;
volScalarField dpdt volScalarField dpdt
( (

View File

@ -17,7 +17,7 @@ if (composition.contains("ft"))
( (
fvm::ddt(rho, ft) fvm::ddt(rho, ft)
+ mvConvection->fvmDiv(phi, ft) + mvConvection->fvmDiv(phi, ft)
- fvm::laplacian(turbulence->alphaEff(), ft) - fvm::laplacian(thermophysicalTransport->alphaEff(), ft)
== ==
fvOptions(rho, ft) fvOptions(rho, ft)
); );

View File

@ -10,16 +10,18 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
EXE_LIBS = \ EXE_LIBS = \
-lengine \ -lengine \
-lturbulenceModels \
-lcompressibleTurbulenceModels \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \
-lturbulenceModels \
-lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lspecie \ -lspecie \
-lfiniteVolume \ -lfiniteVolume \
-lmeshTools \ -lmeshTools \

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -34,6 +34,7 @@ Description
#include "engineMesh.H" #include "engineMesh.H"
#include "psiThermo.H" #include "psiThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "OFstream.H" #include "OFstream.H"
#include "fvOptions.H" #include "fvOptions.H"
#include "pimpleControl.H" #include "pimpleControl.H"
@ -95,6 +96,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -51,6 +51,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating field dpdt\n" << endl; Info<< "Creating field dpdt\n" << endl;
volScalarField dpdt volScalarField dpdt
( (

View File

@ -4,6 +4,7 @@ EXE_INC = \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/transportModels/compressible/lnInclude \ -I$(LIB_SRC)/transportModels/compressible/lnInclude \
@ -27,6 +28,7 @@ EXE_LIBS = \
-lsampling \ -lsampling \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lspecie \ -lspecie \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \

View File

@ -23,7 +23,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
( (
fvm::ddt(rho, Yi) fvm::ddt(rho, Yi)
+ mvConvection->fvmDiv(phi, Yi) + mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence->alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport->alphaEff(), Yi)
== ==
parcels.SYi(i, Yi) parcels.SYi(i, Yi)
+ surfaceFilm.Srho(i) + surfaceFilm.Srho(i)
@ -63,7 +63,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) - fvm::laplacian(thermophysicalTransport->alphaEff(), he)
== ==
combustion->Qdot() combustion->Qdot()
+ radiation->Sh(thermo, he) + radiation->Sh(thermo, he)

View File

@ -64,6 +64,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating combustion model\n" << endl; Info<< "Creating combustion model\n" << endl;
autoPtr<CombustionModel<psiReactionThermo>> combustion autoPtr<CombustionModel<psiReactionThermo>> combustion
( (

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,6 +32,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "basicReactingCloud.H" #include "basicReactingCloud.H"
#include "surfaceFilmModel.H" #include "surfaceFilmModel.H"
#include "radiationModel.H" #include "radiationModel.H"
@ -98,6 +99,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
reaction->Qdot() reaction->Qdot()
+ fvOptions(rho, he) + fvOptions(rho, he)

View File

@ -4,6 +4,7 @@ EXE_INC = \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/transportModels/compressible/lnInclude \ -I$(LIB_SRC)/transportModels/compressible/lnInclude \
@ -19,6 +20,7 @@ EXE_LIBS = \
-lsampling \ -lsampling \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lreactionThermophysicalModels \ -lreactionThermophysicalModels \
-lspecie \ -lspecie \
-lcompressibleTransportModels \ -lcompressibleTransportModels \

View File

@ -23,7 +23,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
( (
fvm::ddt(rho, Yi) fvm::ddt(rho, Yi)
+ mvConvection->fvmDiv(phi, Yi) + mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence->alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport->alphaEff(), Yi)
== ==
reaction->R(Yi) reaction->R(Yi)
+ fvOptions(rho, Yi) + fvOptions(rho, Yi)

View File

@ -61,6 +61,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating reaction model\n" << endl; Info<< "Creating reaction model\n" << endl;
autoPtr<CombustionModel<psiReactionThermo>> reaction autoPtr<CombustionModel<psiReactionThermo>> reaction
( (

View File

@ -31,6 +31,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "psiReactionThermo.H" #include "psiReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
#include "multivariateScheme.H" #include "multivariateScheme.H"
@ -102,6 +103,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -7,6 +7,7 @@ EXE_INC = \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/transportModels/compressible/lnInclude \ -I$(LIB_SRC)/transportModels/compressible/lnInclude \
@ -23,6 +24,7 @@ EXE_LIBS = \
-lsampling \ -lsampling \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lreactionThermophysicalModels \ -lreactionThermophysicalModels \
-lspecie \ -lspecie \
-lcompressibleTransportModels \ -lcompressibleTransportModels \

View File

@ -62,6 +62,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating reaction model\n" << endl; Info<< "Creating reaction model\n" << endl;
autoPtr<CombustionModel<rhoReactionThermo>> reaction autoPtr<CombustionModel<rhoReactionThermo>> reaction
( (

View File

@ -34,6 +34,7 @@ Description
#include "rhoReactionThermo.H" #include "rhoReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "multivariateScheme.H" #include "multivariateScheme.H"
#include "pimpleControl.H" #include "pimpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
@ -104,6 +105,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -3,6 +3,7 @@ EXE_INC = \
-I$(FOAM_SOLVERS)/combustion/reactingFoam \ -I$(FOAM_SOLVERS)/combustion/reactingFoam \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
-I$(LIB_SRC)/transportModels/compressible/lnInclude \ -I$(LIB_SRC)/transportModels/compressible/lnInclude \
@ -26,6 +27,7 @@ EXE_LIBS = \
-lreactionThermophysicalModels \ -lreactionThermophysicalModels \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lfiniteVolume \ -lfiniteVolume \
-ldynamicFvMesh \ -ldynamicFvMesh \
-ltopoChangerFvMesh \ -ltopoChangerFvMesh \

View File

@ -64,6 +64,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating reaction model\n" << endl; Info<< "Creating reaction model\n" << endl;
autoPtr<CombustionModel<rhoReactionThermo>> reaction autoPtr<CombustionModel<rhoReactionThermo>> reaction
( (

View File

@ -35,6 +35,7 @@ Description
#include "rhoReactionThermo.H" #include "rhoReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "multivariateScheme.H" #include "multivariateScheme.H"
#include "pimpleControl.H" #include "pimpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
@ -157,6 +158,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -6,6 +6,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/dynamicFvMesh/lnInclude \ -I$(LIB_SRC)/dynamicFvMesh/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude -I$(LIB_SRC)/meshTools/lnInclude
@ -18,6 +19,7 @@ EXE_LIBS = \
-lrhoCentralFoam \ -lrhoCentralFoam \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-ldynamicFvMesh \ -ldynamicFvMesh \
-ltopoChangerFvMesh \ -ltopoChangerFvMesh \
-lmeshTools -lmeshTools

View File

@ -100,3 +100,9 @@ autoPtr<compressible::turbulenceModel> turbulence
thermo thermo
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -34,6 +34,7 @@ Description
#include "dynamicFvMesh.H" #include "dynamicFvMesh.H"
#include "psiThermo.H" #include "psiThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "fixedRhoFvPatchScalarField.H" #include "fixedRhoFvPatchScalarField.H"
#include "directionInterpolate.H" #include "directionInterpolate.H"
#include "localEulerDdtScheme.H" #include "localEulerDdtScheme.H"
@ -248,7 +249,7 @@ int main(int argc, char *argv[])
solve solve
( (
fvm::ddt(rho, e) - fvc::ddt(rho, e) fvm::ddt(rho, e) - fvc::ddt(rho, e)
- fvm::laplacian(turbulence->alphaEff(), e) + thermophysicalTransport->divq(e)
); );
thermo.correct(); thermo.correct();
rhoE = rho*(e + 0.5*magSqr(U)); rhoE = rho*(e + 0.5*magSqr(U));
@ -261,6 +262,7 @@ int main(int argc, char *argv[])
rho.boundaryFieldRef() == psi.boundaryField()*p.boundaryField(); rho.boundaryFieldRef() == psi.boundaryField()*p.boundaryField();
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
runTime.write(); runTime.write();

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
fvOptions(rho, he) fvOptions(rho, he)
); );

View File

@ -3,6 +3,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/finiteVolume/cfdTools \ -I$(LIB_SRC)/finiteVolume/cfdTools \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
@ -15,6 +16,7 @@ EXE_LIBS = \
-lspecie \ -lspecie \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lfiniteVolume \ -lfiniteVolume \
-ldynamicFvMesh \ -ldynamicFvMesh \
-ltopoChangerFvMesh \ -ltopoChangerFvMesh \

View File

@ -62,6 +62,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating field dpdt\n" << endl; Info<< "Creating field dpdt\n" << endl;
volScalarField dpdt volScalarField dpdt
( (

View File

@ -37,6 +37,7 @@ Description
#include "dynamicFvMesh.H" #include "dynamicFvMesh.H"
#include "fluidThermo.H" #include "fluidThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "pimpleControl.H" #include "pimpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
#include "CorrectPhi.H" #include "CorrectPhi.H"
@ -162,6 +163,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -9,7 +9,7 @@
? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho)) ? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho))
: fvc::div(phi, volScalarField("K", 0.5*magSqr(U))) : fvc::div(phi, volScalarField("K", 0.5*magSqr(U)))
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
fvOptions(rho, he) fvOptions(rho, he)
); );

View File

@ -3,6 +3,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/finiteVolume/cfdTools \ -I$(LIB_SRC)/finiteVolume/cfdTools \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
@ -14,6 +15,7 @@ EXE_LIBS = \
-lspecie \ -lspecie \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lfiniteVolume \ -lfiniteVolume \
-lsampling \ -lsampling \
-lmeshTools \ -lmeshTools \

View File

@ -60,6 +60,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
dimensionedScalar initialMass = fvc::domainIntegrate(rho); dimensionedScalar initialMass = fvc::domainIntegrate(rho);
#include "createMRF.H" #include "createMRF.H"

View File

@ -5,6 +5,7 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/finiteVolume/cfdTools \ -I$(LIB_SRC)/finiteVolume/cfdTools \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
@ -16,6 +17,7 @@ EXE_LIBS = \
-lspecie \ -lspecie \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lfiniteVolume \ -lfiniteVolume \
-lsampling \ -lsampling \
-lmeshTools \ -lmeshTools \

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -33,6 +33,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "fluidThermo.H" #include "fluidThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "simpleControl.H" #include "simpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
#include "fvOptions.H" #include "fvOptions.H"
@ -70,6 +71,7 @@ int main(int argc, char *argv[])
} }
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
runTime.write(); runTime.write();
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"

View File

@ -32,6 +32,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "fluidThermo.H" #include "fluidThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "simpleControl.H" #include "simpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
#include "fvOptions.H" #include "fvOptions.H"
@ -66,6 +67,7 @@ int main(int argc, char *argv[])
#include "pEqn.H" #include "pEqn.H"
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
runTime.write(); runTime.write();

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
rho*(U&g) rho*(U&g)
+ radiation->Sh(thermo, he) + radiation->Sh(thermo, he)

View File

@ -6,6 +6,7 @@ EXE_INC = \
-I$(LIB_SRC)/radiationModels/lnInclude \ -I$(LIB_SRC)/radiationModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/finiteVolume/cfdTools \ -I$(LIB_SRC)/finiteVolume/cfdTools \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
@ -19,6 +20,7 @@ EXE_LIBS = \
-lspecie \ -lspecie \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lfiniteVolume \ -lfiniteVolume \
-ldynamicFvMesh \ -ldynamicFvMesh \
-ltopoChangerFvMesh \ -ltopoChangerFvMesh \

View File

@ -38,6 +38,7 @@ Description
#include "dynamicFvMesh.H" #include "dynamicFvMesh.H"
#include "fluidThermo.H" #include "fluidThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "radiationModel.H" #include "radiationModel.H"
#include "pimpleControl.H" #include "pimpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
@ -162,6 +163,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -52,6 +52,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
#include "readGravitationalAcceleration.H" #include "readGravitationalAcceleration.H"
#include "readhRef.H" #include "readhRef.H"

View File

@ -9,7 +9,7 @@
? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho)) ? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho))
: fvc::div(phi, volScalarField("K", 0.5*magSqr(U))) : fvc::div(phi, volScalarField("K", 0.5*magSqr(U)))
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
rho*(U&g) rho*(U&g)
+ radiation->Sh(thermo, he) + radiation->Sh(thermo, he)

View File

@ -7,7 +7,8 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/radiationModels/lnInclude \ -I$(LIB_SRC)/radiationModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude
EXE_LIBS = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -15,6 +16,7 @@ EXE_LIBS = \
-lsampling \ -lsampling \
-lmeshTools \ -lmeshTools \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lthermophysicalTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \
-lspecie \ -lspecie \
-lradiationModels \ -lradiationModels \

View File

@ -33,6 +33,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "rhoThermo.H" #include "rhoThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "radiationModel.H" #include "radiationModel.H"
#include "simpleControl.H" #include "simpleControl.H"
#include "pressureControl.H" #include "pressureControl.H"
@ -70,6 +71,7 @@ int main(int argc, char *argv[])
} }
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
runTime.write(); runTime.write();

View File

@ -47,6 +47,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
#include "readGravitationalAcceleration.H" #include "readGravitationalAcceleration.H"
#include "readhRef.H" #include "readhRef.H"

View File

@ -19,6 +19,7 @@ EXE_INC = \
-I$(LIB_SRC)/combustionModels/lnInclude \ -I$(LIB_SRC)/combustionModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/radiationModels/lnInclude \ -I$(LIB_SRC)/radiationModels/lnInclude \
-I$(LIB_SRC)/regionModels/regionModel/lnInclude -I$(LIB_SRC)/regionModels/regionModel/lnInclude
@ -34,6 +35,7 @@ EXE_LIBS = \
-lcombustionModels \ -lcombustionModels \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lmeshTools \ -lmeshTools \
-lfiniteVolume \ -lfiniteVolume \
-lradiationModels \ -lradiationModels \

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -33,6 +33,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "rhoReactionThermo.H" #include "rhoReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
#include "fixedGradientFvPatchFields.H" #include "fixedGradientFvPatchFields.H"

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence.alphaEff(), he) + thermophysicalTransport.divq(he)
== ==
rho*(U&g) rho*(U&g)
+ rad.Sh(thermo, he) + rad.Sh(thermo, he)

View File

@ -42,7 +42,7 @@ if (Y.size())
( (
fvm::ddt(rho, Yi) fvm::ddt(rho, Yi)
+ mvConvection->fvmDiv(phi, Yi) + mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence.alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport.alphaEff(), Yi)
== ==
reaction.R(Yi) reaction.R(Yi)
+ fvOptions(rho, Yi) + fvOptions(rho, Yi)

View File

@ -8,6 +8,8 @@ PtrList<uniformDimensionedScalarField> hRefFluid(fluidRegions.size());
PtrList<volScalarField> ghFluid(fluidRegions.size()); PtrList<volScalarField> ghFluid(fluidRegions.size());
PtrList<surfaceScalarField> ghfFluid(fluidRegions.size()); PtrList<surfaceScalarField> ghfFluid(fluidRegions.size());
PtrList<compressible::turbulenceModel> turbulenceFluid(fluidRegions.size()); PtrList<compressible::turbulenceModel> turbulenceFluid(fluidRegions.size());
PtrList<compressible::thermophysicalTransportModel>
thermophysicalTransportFluid(fluidRegions.size());
PtrList<CombustionModel<rhoReactionThermo>> reactionFluid(fluidRegions.size()); PtrList<CombustionModel<rhoReactionThermo>> reactionFluid(fluidRegions.size());
PtrList<volScalarField> p_rghFluid(fluidRegions.size()); PtrList<volScalarField> p_rghFluid(fluidRegions.size());
PtrList<radiationModel> radiation(fluidRegions.size()); PtrList<radiationModel> radiation(fluidRegions.size());
@ -157,6 +159,16 @@ forAll(fluidRegions, i)
).ptr() ).ptr()
); );
Info<< " Adding to thermophysicalTransport\n" << endl;
thermophysicalTransportFluid.set
(
i,
compressible::thermophysicalTransportModel::New
(
turbulenceFluid[i]
).ptr()
);
Info<< " Adding to reactionFluid\n" << endl; Info<< " Adding to reactionFluid\n" << endl;
reactionFluid.set reactionFluid.set
( (

View File

@ -28,6 +28,9 @@
surfaceScalarField& phi = phiFluid[i]; surfaceScalarField& phi = phiFluid[i];
compressible::turbulenceModel& turbulence = turbulenceFluid[i]; compressible::turbulenceModel& turbulence = turbulenceFluid[i];
compressible::thermophysicalTransportModel& thermophysicalTransport =
thermophysicalTransportFluid[i];
volScalarField& K = KFluid[i]; volScalarField& K = KFluid[i];
volScalarField& dpdt = dpdtFluid[i]; volScalarField& dpdt = dpdtFluid[i];

View File

@ -22,6 +22,7 @@ else
if (pimples.pimpleTurbCorr(i)) if (pimples.pimpleTurbCorr(i))
{ {
turbulence.correct(); turbulence.correct();
thermophysicalTransport.correct();
} }
if (!mesh.steady() && pimples.finalPimpleIter()) if (!mesh.steady() && pimples.finalPimpleIter())

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(alphaEff, he) + thermophysicalTransport->divq(he)
== ==
radiation->Sh(thermo, he) radiation->Sh(thermo, he)
+ fvOptions(rho, he) + fvOptions(rho, he)

View File

@ -6,7 +6,8 @@ EXE_INC = \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/radiationModels/lnInclude \ -I$(LIB_SRC)/radiationModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude
EXE_LIBS = \ EXE_LIBS = \
-lfiniteVolume \ -lfiniteVolume \
@ -18,4 +19,5 @@ EXE_LIBS = \
-lradiationModels \ -lradiationModels \
-lspecie \ -lspecie \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels

View File

@ -35,7 +35,23 @@ volVectorField U
#include "compressibleCreatePhi.H" #include "compressibleCreatePhi.H"
#include "setAlphaEff.H" Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence
(
compressible::turbulenceModel::New
(
rho,
U,
phi,
thermo
)
);
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating field dpdt\n" << endl; Info<< "Creating field dpdt\n" << endl;
volScalarField dpdt volScalarField dpdt

View File

@ -1,47 +0,0 @@
Info<< "Creating turbulence model\n" << endl;
tmp<volScalarField> talphaEff;
IOobject turbulencePropertiesHeader
(
"turbulenceProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ_IF_MODIFIED,
IOobject::NO_WRITE,
false
);
if (turbulencePropertiesHeader.typeHeaderOk<IOdictionary>(true))
{
autoPtr<compressible::turbulenceModel> turbulence
(
compressible::turbulenceModel::New
(
rho,
U,
phi,
thermo
)
);
talphaEff = turbulence->alphaEff();
}
else
{
talphaEff = tmp<volScalarField>
(
new volScalarField
(
IOobject
(
"alphaEff",
runTime.timeName(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),
mesh,
dimensionedScalar(dimMass/dimLength/dimTime, 0)
)
);
}

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,6 +32,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "rhoThermo.H" #include "rhoThermo.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "LESModel.H" #include "LESModel.H"
#include "radiationModel.H" #include "radiationModel.H"
#include "fvOptions.H" #include "fvOptions.H"
@ -50,8 +51,6 @@ int main(int argc, char *argv[])
#include "createMesh.H" #include "createMesh.H"
#include "createFields.H" #include "createFields.H"
const volScalarField& alphaEff = talphaEff();
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Info<< "\nEvolving thermodynamics\n" << endl; Info<< "\nEvolving thermodynamics\n" << endl;

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
rho*(U&g) rho*(U&g)
+ combustion->Qdot() + combustion->Qdot()

View File

@ -3,6 +3,7 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/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)/lagrangian/coalCombustion/lnInclude \ -I$(LIB_SRC)/lagrangian/coalCombustion/lnInclude \
@ -27,6 +28,7 @@ EXE_LIBS = \
-lmeshTools \ -lmeshTools \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-llagrangian \ -llagrangian \
-llagrangianIntermediate \ -llagrangianIntermediate \
-llagrangianTurbulence \ -llagrangianTurbulence \

View File

@ -24,7 +24,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
( (
fvm::ddt(rho, Yi) fvm::ddt(rho, Yi)
+ mvConvection->fvmDiv(phi, Yi) + mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence->alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport->alphaEff(), Yi)
== ==
coalParcels.SYi(i, Yi) coalParcels.SYi(i, Yi)
+ combustion->R(Yi) + combustion->R(Yi)

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,6 +32,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "basicThermoCloud.H" #include "basicThermoCloud.H"
#include "coalCloud.H" #include "coalCloud.H"
#include "psiReactionThermo.H" #include "psiReactionThermo.H"
@ -114,6 +115,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -107,6 +107,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating combustion model\n" << endl; Info<< "Creating combustion model\n" << endl;
autoPtr<CombustionModel<psiReactionThermo>> combustion autoPtr<CombustionModel<psiReactionThermo>> combustion
( (

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
rho*(U&g) rho*(U&g)
+ parcels.Sh(he) + parcels.Sh(he)

View File

@ -6,6 +6,7 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/transportModels/compressible/lnInclude \ -I$(LIB_SRC)/transportModels/compressible/lnInclude \
@ -30,6 +31,7 @@ EXE_LIBS = \
-lmeshTools \ -lmeshTools \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-lspecie \ -lspecie \
-lcompressibleTransportModels \ -lcompressibleTransportModels \
-lfluidThermophysicalModels \ -lfluidThermophysicalModels \

View File

@ -24,7 +24,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
( (
fvm::ddt(rho, Yi) fvm::ddt(rho, Yi)
+ mvConvection->fvmDiv(phi, Yi) + mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence->alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport->alphaEff(), Yi)
== ==
parcels.SYi(i, Yi) parcels.SYi(i, Yi)
+ fvOptions(rho, Yi) + fvOptions(rho, Yi)

View File

@ -61,6 +61,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating combustion model\n" << endl; Info<< "Creating combustion model\n" << endl;
autoPtr<CombustionModel<rhoReactionThermo>> combustion autoPtr<CombustionModel<rhoReactionThermo>> combustion
( (

View File

@ -32,6 +32,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "basicReactingMultiphaseCloud.H" #include "basicReactingMultiphaseCloud.H"
#include "surfaceFilmModel.H" #include "surfaceFilmModel.H"
#include "rhoReactionThermo.H" #include "rhoReactionThermo.H"
@ -115,6 +116,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }
} }

View File

@ -9,7 +9,7 @@
? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho)) ? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho))
: fvc::div(phi, volScalarField("K", 0.5*magSqr(U))) : fvc::div(phi, volScalarField("K", 0.5*magSqr(U)))
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
rho*(U&g) rho*(U&g)
+ parcels.Sh(he) + parcels.Sh(he)

View File

@ -4,6 +4,7 @@ EXE_INC = \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/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)/lagrangian/coalCombustion/lnInclude \ -I$(LIB_SRC)/lagrangian/coalCombustion/lnInclude \
@ -29,6 +30,7 @@ EXE_LIBS = \
-lmeshTools \ -lmeshTools \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-llagrangian \ -llagrangian \
-llagrangianIntermediate \ -llagrangianIntermediate \
-llagrangianTurbulence \ -llagrangianTurbulence \

View File

@ -22,7 +22,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvScalarMatrix YEqn fvScalarMatrix YEqn
( (
mvConvection->fvmDiv(phi, Yi) mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence->alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport->alphaEff(), Yi)
== ==
parcels.SYi(i, Yi) parcels.SYi(i, Yi)
+ combustion->R(Yi) + combustion->R(Yi)

View File

@ -84,6 +84,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating combustion model\n" << endl; Info<< "Creating combustion model\n" << endl;
autoPtr<CombustionModel<rhoReactionThermo>> combustion autoPtr<CombustionModel<rhoReactionThermo>> combustion
( (

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation \\ / A nd | Copyright (C) 2013-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,6 +32,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "basicReactingMultiphaseCloud.H" #include "basicReactingMultiphaseCloud.H"
#include "rhoReactionThermo.H" #include "rhoReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
@ -76,6 +77,7 @@ int main(int argc, char *argv[])
} }
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
runTime.write(); runTime.write();

View File

@ -15,7 +15,7 @@
) )
: -dpdt : -dpdt
) )
- fvm::laplacian(turbulence->alphaEff(), he) + thermophysicalTransport->divq(he)
== ==
rho*(U&g) rho*(U&g)
+ parcels.Sh(he) + parcels.Sh(he)

View File

@ -7,6 +7,7 @@ EXE_INC = \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/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)/lagrangian/spray/lnInclude \ -I$(LIB_SRC)/lagrangian/spray/lnInclude \
@ -29,6 +30,7 @@ EXE_INC = \
EXE_LIBS = \ EXE_LIBS = \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-llagrangian \ -llagrangian \
-llagrangianIntermediate \ -llagrangianIntermediate \
-llagrangianTurbulence \ -llagrangianTurbulence \

View File

@ -23,7 +23,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
( (
fvm::ddt(rho, Yi) fvm::ddt(rho, Yi)
+ mvConvection->fvmDiv(phi, Yi) + mvConvection->fvmDiv(phi, Yi)
- fvm::laplacian(turbulence->alphaEff(), Yi) - fvm::laplacian(thermophysicalTransport->alphaEff(), Yi)
== ==
parcels.SYi(i, Yi) parcels.SYi(i, Yi)
+ combustion->R(Yi) + combustion->R(Yi)

View File

@ -86,6 +86,12 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
Info<< "Creating thermophysical transport model\n" << endl;
autoPtr<compressible::thermophysicalTransportModel> thermophysicalTransport
(
compressible::thermophysicalTransportModel::New(turbulence())
);
Info<< "Creating combustion model\n" << endl; Info<< "Creating combustion model\n" << endl;
autoPtr<CombustionModel<psiReactionThermo>> combustion autoPtr<CombustionModel<psiReactionThermo>> combustion
( (

View File

@ -7,6 +7,7 @@ EXE_INC = \
-I$(LIB_SRC)/sampling/lnInclude \ -I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/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)/lagrangian/spray/lnInclude \ -I$(LIB_SRC)/lagrangian/spray/lnInclude \
@ -32,6 +33,7 @@ EXE_LIBS = \
-lsampling \ -lsampling \
-lturbulenceModels \ -lturbulenceModels \
-lcompressibleTurbulenceModels \ -lcompressibleTurbulenceModels \
-lthermophysicalTransportModels \
-llagrangian \ -llagrangian \
-llagrangianIntermediate \ -llagrangianIntermediate \
-llagrangianTurbulence \ -llagrangianTurbulence \

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -34,6 +34,7 @@ Description
#include "engineTime.H" #include "engineTime.H"
#include "engineMesh.H" #include "engineMesh.H"
#include "turbulentFluidThermoModel.H" #include "turbulentFluidThermoModel.H"
#include "fluidThermoTransportModel.H"
#include "basicSprayCloud.H" #include "basicSprayCloud.H"
#include "psiReactionThermo.H" #include "psiReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
@ -101,6 +102,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2011-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -33,6 +33,7 @@ Description
#include "fvCFD.H" #include "fvCFD.H"
#include "dynamicFvMesh.H" #include "dynamicFvMesh.H"
#include "turbulenceModel.H" #include "turbulenceModel.H"
#include "fluidThermoTransportModel.H"
#include "basicSprayCloud.H" #include "basicSprayCloud.H"
#include "psiReactionThermo.H" #include "psiReactionThermo.H"
#include "CombustionModel.H" #include "CombustionModel.H"
@ -143,6 +144,7 @@ int main(int argc, char *argv[])
if (pimple.turbCorr()) if (pimple.turbCorr())
{ {
turbulence->correct(); turbulence->correct();
thermophysicalTransport->correct();
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2017-2018 OpenFOAM Foundation \\ / A nd | Copyright (C) 2017-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -43,11 +43,11 @@ Foam::compressibleInterPhaseTransportModel::compressibleInterPhaseTransportModel
alphaPhi10_(alphaPhi10) alphaPhi10_(alphaPhi10)
{ {
{ {
IOdictionary turbulenceProperties IOdictionary momentumTransport
( (
IOobject IOobject
( (
turbulenceModel::propertiesName, turbulenceModel::typeName,
U.time().constant(), U.time().constant(),
U.db(), U.db(),
IOobject::MUST_READ, IOobject::MUST_READ,
@ -57,7 +57,7 @@ Foam::compressibleInterPhaseTransportModel::compressibleInterPhaseTransportModel
word simulationType word simulationType
( (
turbulenceProperties.lookup("simulationType") momentumTransport.lookup("simulationType")
); );
if (simulationType == "twoPhaseTransport") if (simulationType == "twoPhaseTransport")
@ -140,6 +140,7 @@ Foam::compressibleInterPhaseTransportModel::compressibleInterPhaseTransportModel
Foam::tmp<Foam::volScalarField> Foam::tmp<Foam::volScalarField>
Foam::compressibleInterPhaseTransportModel::alphaEff() const Foam::compressibleInterPhaseTransportModel::alphaEff() const
{ {
/* ***HGW
if (twoPhaseTransport_) if (twoPhaseTransport_)
{ {
return return
@ -156,6 +157,24 @@ Foam::compressibleInterPhaseTransportModel::alphaEff() const
{ {
return mixture_.alphaEff(turbulence_->alphat()); return mixture_.alphaEff(turbulence_->alphat());
} }
*/
if (twoPhaseTransport_)
{
return
mixture_.alpha1()*mixture_.thermo1().alphaEff
(
turbulence1_->mut()
)
+ mixture_.alpha2()*mixture_.thermo2().alphaEff
(
turbulence2_->mut()
);
}
else
{
return mixture_.alphaEff(turbulence_->mut());
}
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2017-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2017-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -31,7 +31,7 @@ Description
By default the standard mixture transport modelling approach is used in By default the standard mixture transport modelling approach is used in
which a single momentum stress model (laminar, non-Newtonian, LES or RAS) is which a single momentum stress model (laminar, non-Newtonian, LES or RAS) is
constructed for the mixture. However if the \c simulationType in constructed for the mixture. However if the \c simulationType in
constant/turbulenceProperties is set to \c twoPhaseTransport the alternative constant/momentumTransport is set to \c twoPhaseTransport the alternative
Euler-Euler two-phase transport modelling approach is used in which separate Euler-Euler two-phase transport modelling approach is used in which separate
stress models (laminar, non-Newtonian, LES or RAS) are instantiated for each stress models (laminar, non-Newtonian, LES or RAS) are instantiated for each
of the two phases allowing for different modeling for the phases. of the two phases allowing for different modeling for the phases.

View File

@ -5,6 +5,7 @@ wclean libso phaseSystems
wclean libso interfacialModels wclean libso interfacialModels
wclean libso interfacialCompositionModels wclean libso interfacialCompositionModels
wclean libso phaseCompressibleTurbulenceModels wclean libso phaseCompressibleTurbulenceModels
wclean libso phaseThermophysicalTransportModels
reactingTwoPhaseEulerFoam/Allwclean reactingTwoPhaseEulerFoam/Allwclean
reactingMultiphaseEulerFoam/Allwclean reactingMultiphaseEulerFoam/Allwclean
wclean libso functionObjects wclean libso functionObjects

View File

@ -8,6 +8,7 @@ wmake $targetType phaseSystems
wmake $targetType interfacialModels wmake $targetType interfacialModels
wmake $targetType interfacialCompositionModels wmake $targetType interfacialCompositionModels
wmake $targetType phaseCompressibleTurbulenceModels wmake $targetType phaseCompressibleTurbulenceModels
wmake $targetType phaseThermophysicalTransportModels
reactingTwoPhaseEulerFoam/Allwmake $targetType $* reactingTwoPhaseEulerFoam/Allwmake $targetType $*
reactingMultiphaseEulerFoam/Allwmake $targetType $* reactingMultiphaseEulerFoam/Allwmake $targetType $*
wmake $targetType functionObjects wmake $targetType functionObjects

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2014-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2014-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -72,7 +72,7 @@ Foam::turbulentDispersionModel::continuousTurbulence() const
( (
IOobject::groupName IOobject::groupName
( (
turbulenceModel::propertiesName, turbulenceModel::typeName,
pair_.continuous().name() pair_.continuous().name()
) )
); );

View File

@ -211,7 +211,7 @@ void Foam::JohnsonJacksonParticleSlipFvPatchVectorField::updateCoeffs()
db() db()
.lookupObject<IOdictionary> .lookupObject<IOdictionary>
( (
IOobject::groupName("turbulenceProperties", phase.name()) IOobject::groupName("momentumTransport", phase.name())
) )
.subDict("RAS") .subDict("RAS")
.subDict("kineticTheoryCoeffs") .subDict("kineticTheoryCoeffs")

View File

@ -225,7 +225,7 @@ void Foam::JohnsonJacksonParticleThetaFvPatchScalarField::updateCoeffs()
db() db()
.lookupObject<IOdictionary> .lookupObject<IOdictionary>
( (
IOobject::groupName("turbulenceProperties", phase.name()) IOobject::groupName("momentumTransport", phase.name())
) )
.subDict("RAS") .subDict("RAS")
.subDict("kineticTheoryCoeffs") .subDict("kineticTheoryCoeffs")

View File

@ -169,7 +169,6 @@ alphatPhaseJayatillekeWallFunctionFvPatchScalarField::calcAlphat
const scalarField& prevAlphat const scalarField& prevAlphat
) const ) const
{ {
// Lookup the fluid model // Lookup the fluid model
const phaseSystem& fluid = const phaseSystem& fluid =
db().lookupObject<phaseSystem>("phaseProperties"); db().lookupObject<phaseSystem>("phaseProperties");
@ -185,7 +184,7 @@ alphatPhaseJayatillekeWallFunctionFvPatchScalarField::calcAlphat
const phaseCompressibleTurbulenceModel& turbModel = const phaseCompressibleTurbulenceModel& turbModel =
db().lookupObject<phaseCompressibleTurbulenceModel> db().lookupObject<phaseCompressibleTurbulenceModel>
( (
IOobject::groupName(turbulenceModel::propertiesName, phase.name()) IOobject::groupName(turbulenceModel::typeName, phase.name())
); );
const nutWallFunctionFvPatchScalarField& nutw = const nutWallFunctionFvPatchScalarField& nutw =
@ -216,7 +215,7 @@ alphatPhaseJayatillekeWallFunctionFvPatchScalarField::calcAlphat
const fvPatchScalarField& Tw = const fvPatchScalarField& Tw =
phase.thermo().T().boundaryField()[patchi]; phase.thermo().T().boundaryField()[patchi];
scalarField Tp(Tw.patchInternalField()); const scalarField Tp(Tw.patchInternalField());
// Heat flux [W/m^2] - lagging alphatw // Heat flux [W/m^2] - lagging alphatw
const scalarField qDot const scalarField qDot
@ -224,19 +223,19 @@ alphatPhaseJayatillekeWallFunctionFvPatchScalarField::calcAlphat
(prevAlphat + alphaw)*hew.snGrad() (prevAlphat + alphaw)*hew.snGrad()
); );
scalarField uTau(Cmu25*sqrt(kw)); const scalarField uTau(Cmu25*sqrt(kw));
scalarField yPlus(uTau*y/(muw/rhow)); const scalarField yPlus(uTau*y/(muw/rhow));
scalarField Pr(muw/alphaw); const scalarField Pr(muw/alphaw);
// Molecular-to-turbulent Prandtl number ratio // Molecular-to-turbulent Prandtl number ratio
scalarField Prat(Pr/Prt_); const scalarField Prat(Pr/Prt_);
// Thermal sublayer thickness // Thermal sublayer thickness
scalarField P(this->Psmooth(Prat)); const scalarField P(this->Psmooth(Prat));
scalarField yPlusTherm(this->yPlusTherm(nutw, P, Prat)); const scalarField yPlusTherm(this->yPlusTherm(nutw, P, Prat));
tmp<scalarField> talphatConv(new scalarField(this->size())); tmp<scalarField> talphatConv(new scalarField(this->size()));
scalarField& alphatConv = talphatConv.ref(); scalarField& alphatConv = talphatConv.ref();

View File

@ -361,7 +361,7 @@ void alphatWallBoilingWallFunctionFvPatchScalarField::updateCoeffs()
( (
IOobject::groupName IOobject::groupName
( (
turbulenceModel::propertiesName, turbulenceModel::typeName,
liquid.name() liquid.name()
) )
); );
@ -370,7 +370,7 @@ void alphatWallBoilingWallFunctionFvPatchScalarField::updateCoeffs()
( (
IOobject::groupName IOobject::groupName
( (
turbulenceModel::propertiesName, turbulenceModel::typeName,
vapor.name() vapor.name()
) )
); );

View File

@ -9,6 +9,7 @@ EXE_INC = \
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
-I$(LIB_SRC)/TurbulenceModels/phaseCompressible/lnInclude \ -I$(LIB_SRC)/TurbulenceModels/phaseCompressible/lnInclude \
-I$(LIB_SRC)/ThermophysicalTransportModels/lnInclude \
-I$(LIB_SRC)/combustionModels/lnInclude \ -I$(LIB_SRC)/combustionModels/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \

View File

@ -26,6 +26,7 @@ License
#include "MovingPhaseModel.H" #include "MovingPhaseModel.H"
#include "phaseSystem.H" #include "phaseSystem.H"
#include "phaseCompressibleTurbulenceModel.H" #include "phaseCompressibleTurbulenceModel.H"
#include "phaseThermophysicalTransportModel.H"
#include "fixedValueFvPatchFields.H" #include "fixedValueFvPatchFields.H"
#include "slipFvPatchFields.H" #include "slipFvPatchFields.H"
#include "partialSlipFvPatchFields.H" #include "partialSlipFvPatchFields.H"
@ -174,6 +175,10 @@ Foam::MovingPhaseModel<BasePhaseModel>::MovingPhaseModel
*this *this
) )
), ),
thermophysicalTransport_
(
phaseThermophysicalTransportModel::New(turbulence_)
),
continuityError_ continuityError_
( (
IOobject IOobject
@ -262,6 +267,7 @@ void Foam::MovingPhaseModel<BasePhaseModel>::correctEnergyTransport()
BasePhaseModel::correctEnergyTransport(); BasePhaseModel::correctEnergyTransport();
turbulence_->correctEnergyTransport(); turbulence_->correctEnergyTransport();
thermophysicalTransport_->correct();
} }
@ -475,7 +481,7 @@ template<class BasePhaseModel>
Foam::tmp<Foam::volScalarField> Foam::tmp<Foam::volScalarField>
Foam::MovingPhaseModel<BasePhaseModel>::kappaEff() const Foam::MovingPhaseModel<BasePhaseModel>::kappaEff() const
{ {
return turbulence_->kappaEff(); return thermophysicalTransport_->kappaEff();
} }
@ -483,7 +489,7 @@ template<class BasePhaseModel>
Foam::tmp<Foam::scalarField> Foam::tmp<Foam::scalarField>
Foam::MovingPhaseModel<BasePhaseModel>::kappaEff(const label patchi) const Foam::MovingPhaseModel<BasePhaseModel>::kappaEff(const label patchi) const
{ {
return turbulence_->kappaEff(patchi); return thermophysicalTransport_->kappaEff(patchi);
} }
@ -491,7 +497,7 @@ template<class BasePhaseModel>
Foam::tmp<Foam::volScalarField> Foam::tmp<Foam::volScalarField>
Foam::MovingPhaseModel<BasePhaseModel>::alphaEff() const Foam::MovingPhaseModel<BasePhaseModel>::alphaEff() const
{ {
return turbulence_->alphaEff(); return thermophysicalTransport_->alphaEff();
} }
@ -499,7 +505,7 @@ template<class BasePhaseModel>
Foam::tmp<Foam::scalarField> Foam::tmp<Foam::scalarField>
Foam::MovingPhaseModel<BasePhaseModel>::alphaEff(const label patchi) const Foam::MovingPhaseModel<BasePhaseModel>::alphaEff(const label patchi) const
{ {
return turbulence_->alphaEff(patchi); return thermophysicalTransport_->alphaEff(patchi);
} }

View File

@ -46,6 +46,7 @@ SourceFiles
#include "phaseModel.H" #include "phaseModel.H"
#include "phaseCompressibleTurbulenceModel.H" #include "phaseCompressibleTurbulenceModel.H"
#include "phaseThermophysicalTransportModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -89,6 +90,9 @@ protected:
//- Turbulence model //- Turbulence model
autoPtr<phaseCompressibleTurbulenceModel> turbulence_; autoPtr<phaseCompressibleTurbulenceModel> turbulence_;
//- Thermophysical transport model
autoPtr<phaseThermophysicalTransportModel> thermophysicalTransport_;
//- Continuity error //- Continuity error
volScalarField continuityError_; volScalarField continuityError_;

View File

@ -0,0 +1,52 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2020 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Typedef
Foam::phaseThermophysicalTransportModel
Description
Typedef for phaseThermophysicalTransportModel
\*---------------------------------------------------------------------------*/
#ifndef phaseThermophysicalTransportModel_H
#define phaseThermophysicalTransportModel_H
#include "PhaseThermophysicalTransportModel.H"
#include "phaseCompressibleTurbulenceModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
typedef PhaseThermophysicalTransportModel
<
phaseCompressibleTurbulenceModel
> phaseThermophysicalTransportModel;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //

View File

@ -234,6 +234,12 @@ public:
//- Return the thermophysical model //- Return the thermophysical model
virtual const rhoThermo& thermo() const = 0; virtual const rhoThermo& thermo() const = 0;
//- Cast to the thermophysical model
operator const rhoThermo&() const
{
return thermo();
}
//- Access the thermophysical model //- Access the thermophysical model
virtual rhoThermo& thermoRef() = 0; virtual rhoThermo& thermoRef() = 0;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org \\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2018-2019 OpenFOAM Foundation \\ / A nd | Copyright (C) 2018-2020 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -78,7 +78,7 @@ wallBoiling
( (
IOobject::groupName IOobject::groupName
( (
turbulenceModel::propertiesName, turbulenceModel::typeName,
popBal_.continuousPhase().name() popBal_.continuousPhase().name()
) )
) )

Some files were not shown because too many files have changed in this diff Show More