mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merged reactingParcelFilmFoam into reactingParcelFoam
The combined solver includes the most advanced and general functionality from
each solver including:
Continuous phase
Lagrangian multiphase parcels
Optional film
Continuous and Lagrangian phase reactions
Radiation
Strong buoyancy force support by solving for p_rgh
The reactingParcelFoam and reactingParcelFilmFoam tutorials have been combined
and updated.
This commit is contained in:
committed by
Andrew Heather
parent
5cb3bb7bc6
commit
791e1ca2d2
@ -1,4 +1,4 @@
|
|||||||
const volScalarField& psi = thermo.psi();
|
const volScalarField& psi = thermo.psi();
|
||||||
const volScalarField& T = thermo.T();
|
const volScalarField& T = thermo.T();
|
||||||
filmModelType& surfaceFilm = tsurfaceFilm();
|
regionModels::surfaceFilmModel& surfaceFilm = tsurfaceFilm();
|
||||||
const label inertIndex(composition.species()[inertSpecie]);
|
const label inertIndex(composition.species()[inertSpecie]);
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
Info<< "\nConstructing surface film model" << endl;
|
Info<< "\nConstructing surface film model" << endl;
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel filmModelType;
|
autoPtr<regionModels::surfaceFilmModel> tsurfaceFilm
|
||||||
|
(
|
||||||
autoPtr<filmModelType> tsurfaceFilm(filmModelType::New(mesh, g));
|
regionModels::surfaceFilmModel::New(mesh, g)
|
||||||
|
);
|
||||||
|
|||||||
@ -1,3 +0,0 @@
|
|||||||
reactingParcelFilmFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_APPBIN)/reactingParcelFilmFoam
|
|
||||||
@ -1,47 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I. \
|
|
||||||
-I../reactingParcelFoam \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
|
||||||
-I${LIB_SRC}/sampling/lnInclude \
|
|
||||||
-I${LIB_SRC}/meshTools/lnInclude \
|
|
||||||
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
|
|
||||||
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
|
|
||||||
-I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
|
|
||||||
-I$(LIB_SRC)/transportModels/compressible/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/thermophysicalProperties/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/thermophysicalFunctions/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/reactionThermo/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \
|
|
||||||
-I$(LIB_SRC)/regionModels/regionModel/lnInclude \
|
|
||||||
-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)/combustionModels/lnInclude \
|
|
||||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lfiniteVolume \
|
|
||||||
-lfvOptions \
|
|
||||||
-lsampling \
|
|
||||||
-lmeshTools \
|
|
||||||
-lturbulenceModels \
|
|
||||||
-lcompressibleTurbulenceModels \
|
|
||||||
-lspecie \
|
|
||||||
-lcompressibleTransportModels \
|
|
||||||
-lfluidThermophysicalModels \
|
|
||||||
-lreactionThermophysicalModels \
|
|
||||||
-lSLGThermo \
|
|
||||||
-lchemistryModel \
|
|
||||||
-lregionModels \
|
|
||||||
-lradiationModels \
|
|
||||||
-lsurfaceFilmModels \
|
|
||||||
-lsurfaceFilmDerivedFvPatchFields \
|
|
||||||
-llagrangianIntermediate \
|
|
||||||
-llagrangianTurbulence \
|
|
||||||
-lODE \
|
|
||||||
-lcombustionModels
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
MRF.correctBoundaryVelocity(U);
|
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(rho, U) + fvm::div(phi, U)
|
|
||||||
+ MRF.DDt(rho, U)
|
|
||||||
+ turbulence->divDevRhoReff(U)
|
|
||||||
==
|
|
||||||
parcels.SU(U)
|
|
||||||
+ fvOptions(rho, U)
|
|
||||||
);
|
|
||||||
|
|
||||||
UEqn.relax();
|
|
||||||
|
|
||||||
fvOptions.constrain(UEqn);
|
|
||||||
|
|
||||||
if (pimple.momentumPredictor())
|
|
||||||
{
|
|
||||||
solve
|
|
||||||
(
|
|
||||||
UEqn
|
|
||||||
==
|
|
||||||
fvc::reconstruct
|
|
||||||
(
|
|
||||||
(
|
|
||||||
- ghf*fvc::snGrad(rho)
|
|
||||||
- fvc::snGrad(p_rgh)
|
|
||||||
)*mesh.magSf()
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
fvOptions.correct(U);
|
|
||||||
K = 0.5*magSqr(U);
|
|
||||||
}
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
Info<< "\nConstructing reacting cloud" << endl;
|
|
||||||
basicReactingCloud parcels
|
|
||||||
(
|
|
||||||
"reactingCloud1",
|
|
||||||
rho,
|
|
||||||
U,
|
|
||||||
g,
|
|
||||||
slgThermo
|
|
||||||
);
|
|
||||||
@ -1,143 +0,0 @@
|
|||||||
#include "createRDeltaT.H"
|
|
||||||
|
|
||||||
Info<< "Creating combustion model\n" << endl;
|
|
||||||
|
|
||||||
autoPtr<combustionModels::psiCombustionModel> combustion
|
|
||||||
(
|
|
||||||
combustionModels::psiCombustionModel::New(mesh)
|
|
||||||
);
|
|
||||||
|
|
||||||
psiReactionThermo& thermo = combustion->thermo();
|
|
||||||
thermo.validate(args.executable(), "h", "e");
|
|
||||||
|
|
||||||
SLGThermo slgThermo(mesh, thermo);
|
|
||||||
|
|
||||||
basicSpecieMixture& composition = thermo.composition();
|
|
||||||
PtrList<volScalarField>& Y = composition.Y();
|
|
||||||
|
|
||||||
const word inertSpecie(thermo.lookup("inertSpecie"));
|
|
||||||
if (!composition.species().found(inertSpecie))
|
|
||||||
{
|
|
||||||
FatalIOErrorIn(args.executable().c_str(), thermo)
|
|
||||||
<< "Inert specie " << inertSpecie << " not found in available species "
|
|
||||||
<< composition.species()
|
|
||||||
<< exit(FatalIOError);
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "Creating field rho\n" << endl;
|
|
||||||
volScalarField rho
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"rho",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::NO_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
thermo.rho()
|
|
||||||
);
|
|
||||||
|
|
||||||
volScalarField& p = thermo.p();
|
|
||||||
|
|
||||||
Info<< "\nReading field U\n" << endl;
|
|
||||||
volVectorField U
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"U",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
#include "compressibleCreatePhi.H"
|
|
||||||
|
|
||||||
Info<< "Creating turbulence model\n" << endl;
|
|
||||||
autoPtr<compressible::turbulenceModel> turbulence
|
|
||||||
(
|
|
||||||
compressible::turbulenceModel::New
|
|
||||||
(
|
|
||||||
rho,
|
|
||||||
U,
|
|
||||||
phi,
|
|
||||||
thermo
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
// Set the turbulence into the combustion model
|
|
||||||
combustion->setTurbulence(turbulence());
|
|
||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
|
||||||
#include "readhRef.H"
|
|
||||||
#include "gh.H"
|
|
||||||
|
|
||||||
|
|
||||||
volScalarField p_rgh
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"p_rgh",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
// Force p_rgh to be consistent with p
|
|
||||||
p_rgh = p - rho*gh;
|
|
||||||
|
|
||||||
mesh.setFluxRequired(p_rgh.name());
|
|
||||||
|
|
||||||
multivariateSurfaceInterpolationScheme<scalar>::fieldTable fields;
|
|
||||||
|
|
||||||
forAll(Y, i)
|
|
||||||
{
|
|
||||||
fields.add(Y[i]);
|
|
||||||
}
|
|
||||||
fields.add(thermo.he());
|
|
||||||
|
|
||||||
IOdictionary additionalControlsDict
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"additionalControls",
|
|
||||||
runTime.constant(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ_IF_MODIFIED,
|
|
||||||
IOobject::NO_WRITE
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
Switch solvePrimaryRegion
|
|
||||||
(
|
|
||||||
additionalControlsDict.lookup("solvePrimaryRegion")
|
|
||||||
);
|
|
||||||
|
|
||||||
volScalarField Qdot
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"Qdot",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::READ_IF_PRESENT,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh,
|
|
||||||
dimensionedScalar("Qdot", dimEnergy/dimVolume/dimTime, 0.0)
|
|
||||||
);
|
|
||||||
|
|
||||||
#include "createDpdt.H"
|
|
||||||
|
|
||||||
#include "createK.H"
|
|
||||||
|
|
||||||
#include "createMRF.H"
|
|
||||||
#include "createClouds.H"
|
|
||||||
#include "createRadiationModel.H"
|
|
||||||
#include "createSurfaceFilmModel.H"
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
Info<< "\nConstructing surface film model" << endl;
|
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel filmModelType;
|
|
||||||
|
|
||||||
autoPtr<filmModelType> tsurfaceFilm(filmModelType::New(mesh, g));
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
rho = thermo.rho();
|
|
||||||
|
|
||||||
volScalarField rAU(1.0/UEqn.A());
|
|
||||||
surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU));
|
|
||||||
volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p));
|
|
||||||
|
|
||||||
surfaceScalarField phig(-rhorAUf*ghf*fvc::snGrad(rho)*mesh.magSf());
|
|
||||||
|
|
||||||
surfaceScalarField phiHbyA
|
|
||||||
(
|
|
||||||
"phiHbyA",
|
|
||||||
(
|
|
||||||
fvc::flux(rho*HbyA)
|
|
||||||
+ rhorAUf*fvc::ddtCorr(rho, U, phi)
|
|
||||||
)
|
|
||||||
+ phig
|
|
||||||
);
|
|
||||||
|
|
||||||
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
|
||||||
|
|
||||||
// Update the pressure BCs to ensure flux consistency
|
|
||||||
constrainPressure(p_rgh, rho, U, phiHbyA, rhorAUf, MRF);
|
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
|
||||||
{
|
|
||||||
fvScalarMatrix p_rghEqn
|
|
||||||
(
|
|
||||||
fvc::ddt(psi, rho)*gh
|
|
||||||
+ fvc::div(phiHbyA)
|
|
||||||
+ fvm::ddt(psi, p_rgh)
|
|
||||||
- fvm::laplacian(rhorAUf, p_rgh)
|
|
||||||
==
|
|
||||||
parcels.Srho()
|
|
||||||
+ surfaceFilm.Srho()
|
|
||||||
+ fvOptions(psi, p_rgh, rho.name())
|
|
||||||
);
|
|
||||||
|
|
||||||
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
|
|
||||||
|
|
||||||
if (pimple.finalNonOrthogonalIter())
|
|
||||||
{
|
|
||||||
phi = phiHbyA + p_rghEqn.flux();
|
|
||||||
U = HbyA + rAU*fvc::reconstruct((p_rghEqn.flux() + phig)/rhorAUf);
|
|
||||||
U.correctBoundaryConditions();
|
|
||||||
fvOptions.correct(U);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
p = p_rgh + rho*gh;
|
|
||||||
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
#include "compressibleContinuityErrs.H"
|
|
||||||
|
|
||||||
K = 0.5*magSqr(U);
|
|
||||||
|
|
||||||
if (thermo.dpdt())
|
|
||||||
{
|
|
||||||
dpdt = fvc::ddt(p);
|
|
||||||
}
|
|
||||||
@ -1,138 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 2011-2017 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/>.
|
|
||||||
|
|
||||||
Application
|
|
||||||
reactingParcelFilmFoam
|
|
||||||
|
|
||||||
Group
|
|
||||||
grpLagrangianSolvers
|
|
||||||
|
|
||||||
Description
|
|
||||||
Transient solver for compressible, turbulent flow with a reacting,
|
|
||||||
multiphase particle cloud, and surface film modelling.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "turbulentFluidThermoModel.H"
|
|
||||||
#include "basicReactingCloud.H"
|
|
||||||
#include "surfaceFilmModel.H"
|
|
||||||
#include "psiCombustionModel.H"
|
|
||||||
#include "radiationModel.H"
|
|
||||||
#include "SLGThermo.H"
|
|
||||||
#include "fvOptions.H"
|
|
||||||
#include "pimpleControl.H"
|
|
||||||
#include "localEulerDdtScheme.H"
|
|
||||||
#include "fvcSmooth.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "postProcess.H"
|
|
||||||
|
|
||||||
#include "setRootCase.H"
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createMesh.H"
|
|
||||||
#include "createControl.H"
|
|
||||||
#include "createTimeControls.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "createFieldRefs.H"
|
|
||||||
#include "createFvOptions.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
turbulence->validate();
|
|
||||||
|
|
||||||
if (!LTS)
|
|
||||||
{
|
|
||||||
#include "compressibleCourantNo.H"
|
|
||||||
#include "setInitialDeltaT.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (runTime.run())
|
|
||||||
{
|
|
||||||
#include "readTimeControls.H"
|
|
||||||
|
|
||||||
if (!LTS)
|
|
||||||
{
|
|
||||||
#include "compressibleCourantNo.H"
|
|
||||||
#include "setMultiRegionDeltaT.H"
|
|
||||||
#include "setDeltaT.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
runTime++;
|
|
||||||
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
parcels.evolve();
|
|
||||||
surfaceFilm.evolve();
|
|
||||||
|
|
||||||
if (LTS)
|
|
||||||
{
|
|
||||||
#include "setRDeltaT.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (solvePrimaryRegion)
|
|
||||||
{
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
|
|
||||||
// --- PIMPLE loop
|
|
||||||
while (pimple.loop())
|
|
||||||
{
|
|
||||||
#include "UEqn.H"
|
|
||||||
#include "YEqn.H"
|
|
||||||
#include "EEqn.H"
|
|
||||||
|
|
||||||
// --- Pressure corrector loop
|
|
||||||
while (pimple.correct())
|
|
||||||
{
|
|
||||||
#include "pEqn.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pimple.turbCorr())
|
|
||||||
{
|
|
||||||
turbulence->correct();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
rho = thermo.rho();
|
|
||||||
}
|
|
||||||
|
|
||||||
runTime.write();
|
|
||||||
|
|
||||||
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
|
||||||
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
|
||||||
<< nl << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "End" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,48 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 2011-2015 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/>.
|
|
||||||
|
|
||||||
Global
|
|
||||||
rhoEqn
|
|
||||||
|
|
||||||
Description
|
|
||||||
Solve the continuity for density.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
{
|
|
||||||
fvScalarMatrix rhoEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(rho)
|
|
||||||
+ fvc::div(phi)
|
|
||||||
==
|
|
||||||
parcels.Srho(rho)
|
|
||||||
+ surfaceFilm.Srho()
|
|
||||||
+ fvOptions(rho)
|
|
||||||
);
|
|
||||||
|
|
||||||
rhoEqn.solve();
|
|
||||||
|
|
||||||
fvOptions.correct(rho);
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -19,6 +19,7 @@
|
|||||||
==
|
==
|
||||||
rho*(U&g)
|
rho*(U&g)
|
||||||
+ parcels.Sh(he)
|
+ parcels.Sh(he)
|
||||||
|
+ surfaceFilm.Sh()
|
||||||
+ radiation->Sh(thermo, he)
|
+ radiation->Sh(thermo, he)
|
||||||
+ Qdot
|
+ Qdot
|
||||||
+ fvOptions(rho, he)
|
+ fvOptions(rho, he)
|
||||||
@ -35,6 +36,6 @@
|
|||||||
thermo.correct();
|
thermo.correct();
|
||||||
radiation->correct();
|
radiation->correct();
|
||||||
|
|
||||||
Info<< "T gas min/max " << min(T).value() << ", "
|
Info<< "T gas min/max = " << min(T).value() << ", "
|
||||||
<< max(T).value() << endl;
|
<< max(T).value() << endl;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,12 +1,11 @@
|
|||||||
EXE_INC = \
|
EXE_INC = \
|
||||||
-I. \
|
-I. \
|
||||||
|
-I../reactingParcelFoam \
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
||||||
|
-I${LIB_SRC}/sampling/lnInclude \
|
||||||
-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)/lagrangian/basic/lnInclude \
|
|
||||||
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
|
|
||||||
-I$(LIB_SRC)/lagrangian/coalCombustion/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 \
|
||||||
@ -17,33 +16,33 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
|
-I$(LIB_SRC)/thermophysicalModels/SLGThermo/lnInclude \
|
||||||
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
-I$(LIB_SRC)/thermophysicalModels/chemistryModel/lnInclude \
|
||||||
-I$(LIB_SRC)/thermophysicalModels/radiation/lnInclude \
|
-I$(LIB_SRC)/thermophysicalModels/radiation/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$(LIB_SRC)/lagrangian/basic/lnInclude \
|
||||||
|
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
|
||||||
|
-I$(LIB_SRC)/ODE/lnInclude \
|
||||||
-I$(LIB_SRC)/combustionModels/lnInclude \
|
-I$(LIB_SRC)/combustionModels/lnInclude \
|
||||||
-I$(LIB_SRC)/sampling/lnInclude \
|
|
||||||
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
-I$(FOAM_SOLVERS)/combustion/reactingFoam
|
||||||
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
-lfvOptions \
|
||||||
|
-lsampling \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
-lturbulenceModels \
|
-lturbulenceModels \
|
||||||
-lcompressibleTurbulenceModels \
|
-lcompressibleTurbulenceModels \
|
||||||
-llagrangian \
|
|
||||||
-llagrangianIntermediate \
|
|
||||||
-llagrangianTurbulence \
|
|
||||||
-lspecie \
|
-lspecie \
|
||||||
-lcompressibleTransportModels \
|
-lcompressibleTransportModels \
|
||||||
-lfluidThermophysicalModels \
|
-lfluidThermophysicalModels \
|
||||||
-lthermophysicalProperties \
|
|
||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
-lSLGThermo \
|
-lSLGThermo \
|
||||||
-lchemistryModel \
|
-lchemistryModel \
|
||||||
-lradiationModels \
|
|
||||||
-lODE \
|
|
||||||
-lregionModels \
|
-lregionModels \
|
||||||
|
-lradiationModels \
|
||||||
-lsurfaceFilmModels \
|
-lsurfaceFilmModels \
|
||||||
-lcombustionModels \
|
-lsurfaceFilmDerivedFvPatchFields \
|
||||||
-lfvOptions \
|
-llagrangian \
|
||||||
-lsampling
|
-llagrangianIntermediate \
|
||||||
|
-llagrangianTurbulence \
|
||||||
|
-lODE \
|
||||||
|
-lcombustionModels
|
||||||
|
|||||||
@ -6,8 +6,7 @@
|
|||||||
+ MRF.DDt(rho, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho()*g
|
parcels.SU(U)
|
||||||
+ parcels.SU(U)
|
|
||||||
+ fvOptions(rho, U)
|
+ fvOptions(rho, U)
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -17,7 +16,18 @@
|
|||||||
|
|
||||||
if (pimple.momentumPredictor())
|
if (pimple.momentumPredictor())
|
||||||
{
|
{
|
||||||
solve(UEqn == -fvc::grad(p));
|
solve
|
||||||
|
(
|
||||||
|
UEqn
|
||||||
|
==
|
||||||
|
fvc::reconstruct
|
||||||
|
(
|
||||||
|
(
|
||||||
|
- ghf*fvc::snGrad(rho)
|
||||||
|
- fvc::snGrad(p_rgh)
|
||||||
|
)*mesh.magSf()
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
fvOptions.correct(U);
|
fvOptions.correct(U);
|
||||||
K = 0.5*magSqr(U);
|
K = 0.5*magSqr(U);
|
||||||
|
|||||||
@ -9,6 +9,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
combustion->correct();
|
combustion->correct();
|
||||||
Qdot = combustion->Qdot();
|
Qdot = combustion->Qdot();
|
||||||
@ -24,11 +25,12 @@ tmp<fv::convectionScheme<scalar>> mvConvection
|
|||||||
(
|
(
|
||||||
fvm::ddt(rho, Yi)
|
fvm::ddt(rho, Yi)
|
||||||
+ mvConvection->fvmDiv(phi, Yi)
|
+ mvConvection->fvmDiv(phi, Yi)
|
||||||
- fvm::laplacian(turbulence->muEff(), Yi)
|
- fvm::laplacian(turbulence->alphaEff(), Yi)
|
||||||
==
|
==
|
||||||
parcels.SYi(i, Yi)
|
parcels.SYi(i, Yi)
|
||||||
+ combustion->R(Yi)
|
|
||||||
+ fvOptions(rho, Yi)
|
+ fvOptions(rho, Yi)
|
||||||
|
+ combustion->R(Yi)
|
||||||
|
+ surfaceFilm.Srho(i)
|
||||||
);
|
);
|
||||||
|
|
||||||
YEqn.relax();
|
YEqn.relax();
|
||||||
|
|||||||
@ -1,3 +1,5 @@
|
|||||||
|
const label inertIndex(composition.species()[inertSpecie]);
|
||||||
|
|
||||||
const volScalarField& T = thermo.T();
|
const volScalarField& T = thermo.T();
|
||||||
const volScalarField& psi = thermo.psi();
|
const volScalarField& psi = thermo.psi();
|
||||||
const label inertIndex(composition.species()[inertSpecie]);
|
regionModels::surfaceFilmModel& surfaceFilm = tsurfaceFilm();
|
||||||
|
|||||||
@ -1,7 +1,5 @@
|
|||||||
#include "createRDeltaT.H"
|
#include "createRDeltaT.H"
|
||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
|
||||||
|
|
||||||
Info<< "Creating combustion model\n" << endl;
|
Info<< "Creating combustion model\n" << endl;
|
||||||
|
|
||||||
autoPtr<combustionModels::rhoCombustionModel> combustion
|
autoPtr<combustionModels::rhoCombustionModel> combustion
|
||||||
@ -26,8 +24,7 @@ if (!composition.species().found(inertSpecie))
|
|||||||
<< exit(FatalIOError);
|
<< exit(FatalIOError);
|
||||||
}
|
}
|
||||||
|
|
||||||
volScalarField& p = thermo.p();
|
Info<< "Creating field rho\n" << endl;
|
||||||
|
|
||||||
volScalarField rho
|
volScalarField rho
|
||||||
(
|
(
|
||||||
IOobject
|
IOobject
|
||||||
@ -41,6 +38,8 @@ volScalarField rho
|
|||||||
thermo.rho()
|
thermo.rho()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
volScalarField& p = thermo.p();
|
||||||
|
|
||||||
Info<< "\nReading field U\n" << endl;
|
Info<< "\nReading field U\n" << endl;
|
||||||
volVectorField U
|
volVectorField U
|
||||||
(
|
(
|
||||||
@ -57,30 +56,6 @@ volVectorField U
|
|||||||
|
|
||||||
#include "compressibleCreatePhi.H"
|
#include "compressibleCreatePhi.H"
|
||||||
|
|
||||||
mesh.setFluxRequired(p.name());
|
|
||||||
|
|
||||||
dimensionedScalar rhoMax
|
|
||||||
(
|
|
||||||
dimensionedScalar::lookupOrDefault
|
|
||||||
(
|
|
||||||
"rhoMax",
|
|
||||||
pimple.dict(),
|
|
||||||
dimDensity,
|
|
||||||
GREAT
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
dimensionedScalar rhoMin
|
|
||||||
(
|
|
||||||
dimensionedScalar::lookupOrDefault
|
|
||||||
(
|
|
||||||
"rhoMin",
|
|
||||||
pimple.dict(),
|
|
||||||
dimDensity,
|
|
||||||
0
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Creating turbulence model\n" << endl;
|
Info<< "Creating turbulence model\n" << endl;
|
||||||
autoPtr<compressible::turbulenceModel> turbulence
|
autoPtr<compressible::turbulenceModel> turbulence
|
||||||
(
|
(
|
||||||
@ -96,6 +71,31 @@ autoPtr<compressible::turbulenceModel> turbulence
|
|||||||
// Set the turbulence into the combustion model
|
// Set the turbulence into the combustion model
|
||||||
combustion->setTurbulence(turbulence());
|
combustion->setTurbulence(turbulence());
|
||||||
|
|
||||||
|
#include "readGravitationalAcceleration.H"
|
||||||
|
#include "readhRef.H"
|
||||||
|
#include "gh.H"
|
||||||
|
|
||||||
|
|
||||||
|
volScalarField p_rgh
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"p_rgh",
|
||||||
|
runTime.timeName(),
|
||||||
|
mesh,
|
||||||
|
IOobject::MUST_READ,
|
||||||
|
IOobject::AUTO_WRITE
|
||||||
|
),
|
||||||
|
mesh
|
||||||
|
);
|
||||||
|
|
||||||
|
// Force p_rgh to be consistent with p
|
||||||
|
p_rgh = p - rho*gh;
|
||||||
|
|
||||||
|
pressureControl pressureControl(p, rho, pimple.dict(), false);
|
||||||
|
|
||||||
|
mesh.setFluxRequired(p_rgh.name());
|
||||||
|
|
||||||
Info<< "Creating multi-variate interpolation scheme\n" << endl;
|
Info<< "Creating multi-variate interpolation scheme\n" << endl;
|
||||||
multivariateSurfaceInterpolationScheme<scalar>::fieldTable fields;
|
multivariateSurfaceInterpolationScheme<scalar>::fieldTable fields;
|
||||||
|
|
||||||
@ -105,6 +105,11 @@ forAll(Y, i)
|
|||||||
}
|
}
|
||||||
fields.add(thermo.he());
|
fields.add(thermo.he());
|
||||||
|
|
||||||
|
Switch solvePrimaryRegion
|
||||||
|
(
|
||||||
|
pimple.dict().lookupOrDefault<Switch>("solvePrimaryRegion", true)
|
||||||
|
);
|
||||||
|
|
||||||
volScalarField Qdot
|
volScalarField Qdot
|
||||||
(
|
(
|
||||||
IOobject
|
IOobject
|
||||||
@ -126,3 +131,4 @@ volScalarField Qdot
|
|||||||
#include "createMRF.H"
|
#include "createMRF.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
|
#include "createSurfaceFilmModel.H"
|
||||||
|
|||||||
@ -0,0 +1,6 @@
|
|||||||
|
Info<< "\nConstructing surface film model" << endl;
|
||||||
|
|
||||||
|
autoPtr<regionModels::surfaceFilmModel> tsurfaceFilm
|
||||||
|
(
|
||||||
|
regionModels::surfaceFilmModel::New(mesh, g)
|
||||||
|
);
|
||||||
@ -1,4 +1,7 @@
|
|||||||
rho = thermo.rho();
|
if (!pimple.SIMPLErho())
|
||||||
|
{
|
||||||
|
rho = thermo.rho();
|
||||||
|
}
|
||||||
|
|
||||||
// Thermodynamic density needs to be updated by psi*d(p) after the
|
// Thermodynamic density needs to be updated by psi*d(p) after the
|
||||||
// pressure solution
|
// pressure solution
|
||||||
@ -7,6 +10,9 @@ const volScalarField psip0(psi*p);
|
|||||||
volScalarField rAU(1.0/UEqn.A());
|
volScalarField rAU(1.0/UEqn.A());
|
||||||
surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU));
|
surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU));
|
||||||
volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p));
|
volVectorField HbyA(constrainHbyA(rAU*UEqn.H(), U, p));
|
||||||
|
|
||||||
|
surfaceScalarField phig(-rhorAUf*ghf*fvc::snGrad(rho)*mesh.magSf());
|
||||||
|
|
||||||
surfaceScalarField phiHbyA
|
surfaceScalarField phiHbyA
|
||||||
(
|
(
|
||||||
"phiHbyA",
|
"phiHbyA",
|
||||||
@ -14,58 +20,68 @@ surfaceScalarField phiHbyA
|
|||||||
fvc::flux(rho*HbyA)
|
fvc::flux(rho*HbyA)
|
||||||
+ rhorAUf*fvc::ddtCorr(rho, U, phi)
|
+ rhorAUf*fvc::ddtCorr(rho, U, phi)
|
||||||
)
|
)
|
||||||
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
// Update the pressure BCs to ensure flux consistency
|
// Update the pressure BCs to ensure flux consistency
|
||||||
constrainPressure(p, rho, U, phiHbyA, rhorAUf, MRF);
|
constrainPressure(p_rgh, rho, U, phiHbyA, rhorAUf, MRF);
|
||||||
|
|
||||||
fvScalarMatrix pDDtEqn
|
fvScalarMatrix p_rghDDtEqn
|
||||||
(
|
(
|
||||||
fvc::ddt(rho) + psi*correction(fvm::ddt(p))
|
fvc::ddt(rho) + psi*correction(fvm::ddt(p_rgh))
|
||||||
+ fvc::div(phiHbyA)
|
+ fvc::div(phiHbyA)
|
||||||
==
|
==
|
||||||
parcels.Srho()
|
parcels.Srho()
|
||||||
+ fvOptions(psi, p, rho.name())
|
+ surfaceFilm.Srho()
|
||||||
|
+ fvOptions(psi, p_rgh, rho.name())
|
||||||
);
|
);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
fvScalarMatrix pEqn
|
fvScalarMatrix p_rghEqn
|
||||||
(
|
(
|
||||||
pDDtEqn
|
p_rghDDtEqn
|
||||||
- fvm::laplacian(rhorAUf, p)
|
- fvm::laplacian(rhorAUf, p_rgh)
|
||||||
);
|
);
|
||||||
|
|
||||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
|
||||||
|
|
||||||
if (pimple.finalNonOrthogonalIter())
|
if (pimple.finalNonOrthogonalIter())
|
||||||
{
|
{
|
||||||
phi = phiHbyA + pEqn.flux();
|
phi = phiHbyA + p_rghEqn.flux();
|
||||||
|
|
||||||
|
// Explicitly relax pressure for momentum corrector
|
||||||
|
p_rgh.relax();
|
||||||
|
|
||||||
|
U = HbyA + rAU*fvc::reconstruct((p_rghEqn.flux() + phig)/rhorAUf);
|
||||||
|
U.correctBoundaryConditions();
|
||||||
|
fvOptions.correct(U);
|
||||||
|
K = 0.5*magSqr(U);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
p.relax();
|
p = p_rgh + rho*gh;
|
||||||
|
|
||||||
// Thermodynamic density update
|
// Thermodynamic density update
|
||||||
thermo.correctRho(psi*p - psip0);
|
thermo.correctRho(psi*p - psip0);
|
||||||
|
|
||||||
#include "rhoEqn.H" // NOTE: flux and time scales now inconsistent
|
#include "rhoEqn.H"
|
||||||
#include "compressibleContinuityErrs.H"
|
#include "compressibleContinuityErrs.H"
|
||||||
|
|
||||||
U = HbyA - rAU*fvc::grad(p);
|
if (pressureControl.limit(p))
|
||||||
U.correctBoundaryConditions();
|
{
|
||||||
fvOptions.correct(U);
|
p.correctBoundaryConditions();
|
||||||
K = 0.5*magSqr(U);
|
rho = thermo.rho();
|
||||||
|
p_rgh = p - rho*gh;
|
||||||
|
}
|
||||||
|
else if (pimple.SIMPLErho())
|
||||||
|
{
|
||||||
|
rho = thermo.rho();
|
||||||
|
}
|
||||||
|
|
||||||
if (thermo.dpdt())
|
if (thermo.dpdt())
|
||||||
{
|
{
|
||||||
dpdt = fvc::ddt(p);
|
dpdt = fvc::ddt(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
rho = thermo.rho();
|
|
||||||
rho = max(rho, rhoMin);
|
|
||||||
rho = min(rho, rhoMax);
|
|
||||||
|
|
||||||
Info<< "p min/max = " << min(p).value() << ", " << max(p).value() << endl;
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -29,18 +29,20 @@ Group
|
|||||||
|
|
||||||
Description
|
Description
|
||||||
Transient solver for compressible, turbulent flow with a reacting,
|
Transient solver for compressible, turbulent flow with a reacting,
|
||||||
multiphase particle cloud, and optional sources/constraints.
|
multiphase particle cloud, and surface film modelling.
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "fvCFD.H"
|
#include "fvCFD.H"
|
||||||
#include "turbulentFluidThermoModel.H"
|
#include "turbulentFluidThermoModel.H"
|
||||||
#include "basicReactingMultiphaseCloud.H"
|
#include "basicReactingMultiphaseCloud.H"
|
||||||
|
#include "surfaceFilmModel.H"
|
||||||
#include "rhoCombustionModel.H"
|
#include "rhoCombustionModel.H"
|
||||||
#include "radiationModel.H"
|
#include "radiationModel.H"
|
||||||
#include "fvOptions.H"
|
|
||||||
#include "SLGThermo.H"
|
#include "SLGThermo.H"
|
||||||
|
#include "fvOptions.H"
|
||||||
#include "pimpleControl.H"
|
#include "pimpleControl.H"
|
||||||
|
#include "pressureControl.H"
|
||||||
#include "localEulerDdtScheme.H"
|
#include "localEulerDdtScheme.H"
|
||||||
#include "fvcSmooth.H"
|
#include "fvcSmooth.H"
|
||||||
|
|
||||||
@ -76,10 +78,14 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|
||||||
if (!LTS)
|
if (LTS)
|
||||||
|
{
|
||||||
|
#include "setRDeltaT.H"
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
#include "compressibleCourantNo.H"
|
#include "compressibleCourantNo.H"
|
||||||
#include "setDeltaT.H"
|
#include "setMultiRegionDeltaT.H"
|
||||||
}
|
}
|
||||||
|
|
||||||
runTime++;
|
runTime++;
|
||||||
@ -87,34 +93,36 @@ int main(int argc, char *argv[])
|
|||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
Info<< "Time = " << runTime.timeName() << nl << endl;
|
||||||
|
|
||||||
parcels.evolve();
|
parcels.evolve();
|
||||||
|
surfaceFilm.evolve();
|
||||||
|
|
||||||
if (LTS)
|
if (solvePrimaryRegion)
|
||||||
{
|
{
|
||||||
#include "setRDeltaT.H"
|
if (pimple.nCorrPIMPLE() <= 1)
|
||||||
}
|
|
||||||
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
|
|
||||||
// --- Pressure-velocity PIMPLE corrector loop
|
|
||||||
while (pimple.loop())
|
|
||||||
{
|
|
||||||
#include "UEqn.H"
|
|
||||||
#include "YEqn.H"
|
|
||||||
#include "EEqn.H"
|
|
||||||
|
|
||||||
// --- Pressure corrector loop
|
|
||||||
while (pimple.correct())
|
|
||||||
{
|
{
|
||||||
#include "pEqn.H"
|
#include "rhoEqn.H"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pimple.turbCorr())
|
// --- PIMPLE loop
|
||||||
|
while (pimple.loop())
|
||||||
{
|
{
|
||||||
turbulence->correct();
|
#include "UEqn.H"
|
||||||
}
|
#include "YEqn.H"
|
||||||
}
|
#include "EEqn.H"
|
||||||
|
|
||||||
rho = thermo.rho();
|
// --- Pressure corrector loop
|
||||||
|
while (pimple.correct())
|
||||||
|
{
|
||||||
|
#include "pEqn.H"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pimple.turbCorr())
|
||||||
|
{
|
||||||
|
turbulence->correct();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
rho = thermo.rho();
|
||||||
|
}
|
||||||
|
|
||||||
runTime.write();
|
runTime.write();
|
||||||
|
|
||||||
@ -123,7 +131,7 @@ int main(int argc, char *argv[])
|
|||||||
<< nl << endl;
|
<< nl << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
Info<< "End\n" << endl;
|
Info<< "End" << endl;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -36,15 +36,13 @@ Description
|
|||||||
+ fvc::div(phi)
|
+ fvc::div(phi)
|
||||||
==
|
==
|
||||||
parcels.Srho(rho)
|
parcels.Srho(rho)
|
||||||
|
+ surfaceFilm.Srho()
|
||||||
+ fvOptions(rho)
|
+ fvOptions(rho)
|
||||||
);
|
);
|
||||||
|
|
||||||
rhoEqn.solve();
|
rhoEqn.solve();
|
||||||
|
|
||||||
fvOptions.correct(rho);
|
fvOptions.correct(rho);
|
||||||
|
|
||||||
Info<< "rho min/max = " << min(rho).value() << ", " << max(rho).value()
|
|
||||||
<< endl;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -33,25 +33,21 @@ Description
|
|||||||
|
|
||||||
if (adjustTimeStep)
|
if (adjustTimeStep)
|
||||||
{
|
{
|
||||||
if (CoNum == -GREAT)
|
const scalar maxDeltaTFact =
|
||||||
{
|
min(maxCo/(CoNum + SMALL), maxCo/(surfaceFilm.CourantNumber() + SMALL));
|
||||||
CoNum = SMALL;
|
const scalar deltaTFact =
|
||||||
}
|
min(min(maxDeltaTFact, 1.0 + 0.1*maxDeltaTFact), 1.2);
|
||||||
|
|
||||||
const scalar TFactorFluid = maxCo/(CoNum + SMALL);
|
|
||||||
const scalar TFactorFilm = maxCo/(surfaceFilm.CourantNumber() + SMALL);
|
|
||||||
|
|
||||||
const scalar dt0 = runTime.deltaTValue();
|
|
||||||
|
|
||||||
runTime.setDeltaT
|
runTime.setDeltaT
|
||||||
(
|
(
|
||||||
min
|
min
|
||||||
(
|
(
|
||||||
dt0*min(min(TFactorFluid, TFactorFilm), 1.2),
|
deltaTFact*runTime.deltaTValue(),
|
||||||
maxDeltaT
|
maxDeltaT
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Info<< "deltaT = " << runTime.deltaTValue() << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2013-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2013-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -24,9 +24,6 @@ License
|
|||||||
Application
|
Application
|
||||||
simpleReactingParcelFoam
|
simpleReactingParcelFoam
|
||||||
|
|
||||||
Group
|
|
||||||
grpLagrangianSolvers
|
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Steady state solver for compressible, turbulent flow with reacting,
|
Steady state solver for compressible, turbulent flow with reacting,
|
||||||
multiphase particle clouds and optional sources/constraints.
|
multiphase particle clouds and optional sources/constraints.
|
||||||
@ -38,6 +35,7 @@ Description
|
|||||||
#include "basicReactingMultiphaseCloud.H"
|
#include "basicReactingMultiphaseCloud.H"
|
||||||
#include "rhoCombustionModel.H"
|
#include "rhoCombustionModel.H"
|
||||||
#include "radiationModel.H"
|
#include "radiationModel.H"
|
||||||
|
#include "IOporosityModelList.H"
|
||||||
#include "fvOptions.H"
|
#include "fvOptions.H"
|
||||||
#include "SLGThermo.H"
|
#include "SLGThermo.H"
|
||||||
#include "simpleControl.H"
|
#include "simpleControl.H"
|
||||||
|
|||||||
@ -19,7 +19,6 @@
|
|||||||
==
|
==
|
||||||
rho*(U&g)
|
rho*(U&g)
|
||||||
+ parcels.Sh(he)
|
+ parcels.Sh(he)
|
||||||
+ surfaceFilm.Sh()
|
|
||||||
+ radiation->Sh(thermo, he)
|
+ radiation->Sh(thermo, he)
|
||||||
+ Qdot
|
+ Qdot
|
||||||
+ fvOptions(rho, he)
|
+ fvOptions(rho, he)
|
||||||
@ -36,6 +35,6 @@
|
|||||||
thermo.correct();
|
thermo.correct();
|
||||||
radiation->correct();
|
radiation->correct();
|
||||||
|
|
||||||
Info<< "T gas min/max = " << min(T).value() << ", "
|
Info<< "T gas min/max " << min(T).value() << ", "
|
||||||
<< max(T).value() << endl;
|
<< max(T).value() << endl;
|
||||||
}
|
}
|
||||||
@ -9,7 +9,6 @@ tmp<fv::convectionScheme<scalar>> mvConvection
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
combustion->correct();
|
combustion->correct();
|
||||||
Qdot = combustion->Qdot();
|
Qdot = combustion->Qdot();
|
||||||
@ -25,12 +24,11 @@ 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(turbulence->muEff(), Yi)
|
||||||
==
|
==
|
||||||
parcels.SYi(i, Yi)
|
parcels.SYi(i, Yi)
|
||||||
+ fvOptions(rho, Yi)
|
|
||||||
+ combustion->R(Yi)
|
+ combustion->R(Yi)
|
||||||
+ surfaceFilm.Srho(i)
|
+ fvOptions(rho, Yi)
|
||||||
);
|
);
|
||||||
|
|
||||||
YEqn.relax();
|
YEqn.relax();
|
||||||
@ -1,5 +1,3 @@
|
|||||||
const label inertIndex(composition.species()[inertSpecie]);
|
|
||||||
|
|
||||||
const volScalarField& T = thermo.T();
|
const volScalarField& T = thermo.T();
|
||||||
const volScalarField& psi = thermo.psi();
|
const volScalarField& psi = thermo.psi();
|
||||||
filmModelType& surfaceFilm = tsurfaceFilm();
|
const label inertIndex(composition.species()[inertSpecie]);
|
||||||
@ -45,7 +45,7 @@ addToRunTimeSelectionTable(transferModel, VoFPatchTransfer, dictionary);
|
|||||||
|
|
||||||
VoFPatchTransfer::VoFPatchTransfer
|
VoFPatchTransfer::VoFPatchTransfer
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -98,7 +98,7 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
VoFPatchTransfer(surfaceFilmModel& film, const dictionary& dict);
|
VoFPatchTransfer(surfaceFilmRegionModel& film, const dictionary& dict);
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
|
|||||||
@ -72,7 +72,7 @@ int main(int argc, char *argv[])
|
|||||||
const volScalarField& psi1 = mixture.thermo1().psi();
|
const volScalarField& psi1 = mixture.thermo1().psi();
|
||||||
const volScalarField& psi2 = mixture.thermo2().psi();
|
const volScalarField& psi2 = mixture.thermo2().psi();
|
||||||
|
|
||||||
filmModelType& surfaceFilm = tsurfaceFilm();
|
regionModels::surfaceFilmModel& surfaceFilm = tsurfaceFilm();
|
||||||
|
|
||||||
turbulence->validate();
|
turbulence->validate();
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
Info<< "\nConstructing surface film model" << endl;
|
Info<< "\nConstructing surface film model" << endl;
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel filmModelType;
|
|
||||||
|
|
||||||
SLGThermo slgThermo(mesh, mixture.thermo1());
|
SLGThermo slgThermo(mesh, mixture.thermo1());
|
||||||
autoPtr<filmModelType> tsurfaceFilm(filmModelType::New(mesh, g));
|
autoPtr<regionModels::surfaceFilmModel> tsurfaceFilm
|
||||||
|
(
|
||||||
|
regionModels::surfaceFilmModel::New(mesh, g)
|
||||||
|
);
|
||||||
|
|||||||
@ -24,7 +24,7 @@ License
|
|||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "SurfaceFilmModel.H"
|
#include "SurfaceFilmModel.H"
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
#include "mathematicalConstants.H"
|
#include "mathematicalConstants.H"
|
||||||
|
|
||||||
using namespace Foam::constant;
|
using namespace Foam::constant;
|
||||||
@ -109,9 +109,9 @@ void Foam::SurfaceFilmModel<CloudType>::inject(TrackData& td)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Retrieve the film model from the owner database
|
// Retrieve the film model from the owner database
|
||||||
const regionModels::surfaceFilmModels::surfaceFilmModel& filmModel =
|
const regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel =
|
||||||
this->owner().mesh().time().objectRegistry::template lookupObject
|
this->owner().mesh().time().objectRegistry::template lookupObject
|
||||||
<regionModels::surfaceFilmModels::surfaceFilmModel>
|
<regionModels::surfaceFilmModels::surfaceFilmRegionModel>
|
||||||
(
|
(
|
||||||
"surfaceFilmProperties"
|
"surfaceFilmProperties"
|
||||||
);
|
);
|
||||||
@ -190,7 +190,7 @@ void Foam::SurfaceFilmModel<CloudType>::cacheFilmFields
|
|||||||
(
|
(
|
||||||
const label filmPatchi,
|
const label filmPatchi,
|
||||||
const label primaryPatchi,
|
const label primaryPatchi,
|
||||||
const regionModels::surfaceFilmModels::surfaceFilmModel& filmModel
|
const regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
massParcelPatch_ = filmModel.cloudMassTrans().boundaryField()[filmPatchi];
|
massParcelPatch_ = filmModel.cloudMassTrans().boundaryField()[filmPatchi];
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -54,7 +54,7 @@ namespace regionModels
|
|||||||
{
|
{
|
||||||
namespace surfaceFilmModels
|
namespace surfaceFilmModels
|
||||||
{
|
{
|
||||||
class surfaceFilmModel;
|
class surfaceFilmRegionModel;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -117,7 +117,7 @@ protected:
|
|||||||
(
|
(
|
||||||
const label filmPatchi,
|
const label filmPatchi,
|
||||||
const label primaryPatchi,
|
const label primaryPatchi,
|
||||||
const regionModels::surfaceFilmModels::surfaceFilmModel& filmModel
|
const regionModels::surfaceFilmModels::surfaceFilmRegionModel&
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Set the individual parcel properties
|
//- Set the individual parcel properties
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------* \
|
||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
@ -128,7 +128,7 @@ Foam::vector Foam::ThermoSurfaceFilm<CloudType>::splashDirection
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::ThermoSurfaceFilm<CloudType>::absorbInteraction
|
void Foam::ThermoSurfaceFilm<CloudType>::absorbInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel,
|
||||||
const parcelType& p,
|
const parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -205,7 +205,7 @@ void Foam::ThermoSurfaceFilm<CloudType>::bounceInteraction
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::ThermoSurfaceFilm<CloudType>::drySplashInteraction
|
void Foam::ThermoSurfaceFilm<CloudType>::drySplashInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel,
|
||||||
const parcelType& p,
|
const parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -261,7 +261,7 @@ void Foam::ThermoSurfaceFilm<CloudType>::drySplashInteraction
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::ThermoSurfaceFilm<CloudType>::wetSplashInteraction
|
void Foam::ThermoSurfaceFilm<CloudType>::wetSplashInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel,
|
||||||
parcelType& p,
|
parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -338,7 +338,7 @@ void Foam::ThermoSurfaceFilm<CloudType>::wetSplashInteraction
|
|||||||
template<class CloudType>
|
template<class CloudType>
|
||||||
void Foam::ThermoSurfaceFilm<CloudType>::splashInteraction
|
void Foam::ThermoSurfaceFilm<CloudType>::splashInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel,
|
||||||
const parcelType& p,
|
const parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -556,11 +556,12 @@ bool Foam::ThermoSurfaceFilm<CloudType>::transferParcel
|
|||||||
)
|
)
|
||||||
{
|
{
|
||||||
// Retrieve the film model from the owner database
|
// Retrieve the film model from the owner database
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel =
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel =
|
||||||
const_cast<regionModels::surfaceFilmModels::surfaceFilmModel&>
|
const_cast<regionModels::surfaceFilmModels::surfaceFilmRegionModel&>
|
||||||
(
|
(
|
||||||
this->owner().db().time().objectRegistry::template
|
this->owner().db().time().objectRegistry::template
|
||||||
lookupObject<regionModels::surfaceFilmModels::surfaceFilmModel>
|
lookupObject
|
||||||
|
<regionModels::surfaceFilmModels::surfaceFilmRegionModel>
|
||||||
(
|
(
|
||||||
"surfaceFilmProperties"
|
"surfaceFilmProperties"
|
||||||
)
|
)
|
||||||
@ -624,7 +625,7 @@ void Foam::ThermoSurfaceFilm<CloudType>::cacheFilmFields
|
|||||||
(
|
(
|
||||||
const label filmPatchi,
|
const label filmPatchi,
|
||||||
const label primaryPatchi,
|
const label primaryPatchi,
|
||||||
const regionModels::surfaceFilmModels::surfaceFilmModel& filmModel
|
const regionModels::surfaceFilmModels::surfaceFilmRegionModel& filmModel
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
SurfaceFilmModel<CloudType>::cacheFilmFields
|
SurfaceFilmModel<CloudType>::cacheFilmFields
|
||||||
|
|||||||
@ -171,7 +171,7 @@ protected:
|
|||||||
//- Absorb parcel into film
|
//- Absorb parcel into film
|
||||||
void absorbInteraction
|
void absorbInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel&,
|
||||||
const parcelType& p,
|
const parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -191,7 +191,7 @@ protected:
|
|||||||
//- Parcel interaction with dry surface
|
//- Parcel interaction with dry surface
|
||||||
void drySplashInteraction
|
void drySplashInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel&,
|
||||||
const parcelType& p,
|
const parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -201,7 +201,7 @@ protected:
|
|||||||
//- Parcel interaction with wetted surface
|
//- Parcel interaction with wetted surface
|
||||||
void wetSplashInteraction
|
void wetSplashInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel&,
|
||||||
parcelType& p,
|
parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -211,7 +211,7 @@ protected:
|
|||||||
//- Bai parcel splash interaction model
|
//- Bai parcel splash interaction model
|
||||||
void splashInteraction
|
void splashInteraction
|
||||||
(
|
(
|
||||||
regionModels::surfaceFilmModels::surfaceFilmModel& filmModel,
|
regionModels::surfaceFilmModels::surfaceFilmRegionModel&,
|
||||||
const parcelType& p,
|
const parcelType& p,
|
||||||
const polyPatch& pp,
|
const polyPatch& pp,
|
||||||
const label facei,
|
const label facei,
|
||||||
@ -230,7 +230,7 @@ protected:
|
|||||||
(
|
(
|
||||||
const label filmPatchi,
|
const label filmPatchi,
|
||||||
const label primaryPatchi,
|
const label primaryPatchi,
|
||||||
const regionModels::surfaceFilmModels::surfaceFilmModel&
|
const regionModels::surfaceFilmModels::surfaceFilmRegionModel&
|
||||||
filmModel
|
filmModel
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -27,7 +27,7 @@ License
|
|||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
#include "surfaceFields.H"
|
#include "surfaceFields.H"
|
||||||
#include "pyrolysisModel.H"
|
#include "pyrolysisModel.H"
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -123,7 +123,9 @@ void Foam::filmPyrolysisTemperatureCoupledFvPatchScalarField::updateCoeffs()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel filmModelType;
|
typedef regionModels::surfaceFilmModels::surfaceFilmRegionModel
|
||||||
|
filmModelType;
|
||||||
|
|
||||||
typedef regionModels::pyrolysisModels::pyrolysisModel pyrModelType;
|
typedef regionModels::pyrolysisModels::pyrolysisModel pyrModelType;
|
||||||
|
|
||||||
// Since we're inside initEvaluate/evaluate there might be processor
|
// Since we're inside initEvaluate/evaluate there might be processor
|
||||||
|
|||||||
@ -27,7 +27,7 @@ License
|
|||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
#include "surfaceFields.H"
|
#include "surfaceFields.H"
|
||||||
#include "pyrolysisModel.H"
|
#include "pyrolysisModel.H"
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -123,7 +123,9 @@ void Foam::filmPyrolysisVelocityCoupledFvPatchVectorField::updateCoeffs()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel filmModelType;
|
typedef regionModels::surfaceFilmModels::surfaceFilmRegionModel
|
||||||
|
filmModelType;
|
||||||
|
|
||||||
typedef regionModels::pyrolysisModels::pyrolysisModel pyrModelType;
|
typedef regionModels::pyrolysisModels::pyrolysisModel pyrModelType;
|
||||||
|
|
||||||
// Since we're inside initEvaluate/evaluate there might be processor
|
// Since we're inside initEvaluate/evaluate there might be processor
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
/* Surface film models */
|
/* Surface film models */
|
||||||
surfaceFilmModel/surfaceFilmModel.C
|
surfaceFilmModel/surfaceFilmModel.C
|
||||||
surfaceFilmModel/surfaceFilmModelNew.C
|
surfaceFilmModel/surfaceFilmModelNew.C
|
||||||
|
surfaceFilmRegionModel/surfaceFilmRegionModel.C
|
||||||
noFilm/noFilm.C
|
noFilm/noFilm.C
|
||||||
kinematicSingleLayer/kinematicSingleLayer.C
|
kinematicSingleLayer/kinematicSingleLayer.C
|
||||||
thermoSingleLayer/thermoSingleLayer.C
|
thermoSingleLayer/thermoSingleLayer.C
|
||||||
|
|||||||
@ -25,7 +25,7 @@ License
|
|||||||
|
|
||||||
#include "alphatFilmWallFunctionFvPatchScalarField.H"
|
#include "alphatFilmWallFunctionFvPatchScalarField.H"
|
||||||
#include "turbulentFluidThermoModel.H"
|
#include "turbulentFluidThermoModel.H"
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
#include "fvPatchFieldMapper.H"
|
#include "fvPatchFieldMapper.H"
|
||||||
#include "volFields.H"
|
#include "volFields.H"
|
||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
@ -142,7 +142,7 @@ void alphatFilmWallFunctionFvPatchScalarField::updateCoeffs()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel modelType;
|
typedef regionModels::surfaceFilmModels::surfaceFilmRegionModel modelType;
|
||||||
|
|
||||||
// Since we're inside initEvaluate/evaluate there might be processor
|
// Since we're inside initEvaluate/evaluate there might be processor
|
||||||
// comms underway. Change the tag we use.
|
// comms underway. Change the tag we use.
|
||||||
|
|||||||
@ -28,7 +28,7 @@ License
|
|||||||
#include "volFields.H"
|
#include "volFields.H"
|
||||||
#include "turbulentFluidThermoModel.H"
|
#include "turbulentFluidThermoModel.H"
|
||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
#include "mappedWallPolyPatch.H"
|
#include "mappedWallPolyPatch.H"
|
||||||
#include "mapDistribute.H"
|
#include "mapDistribute.H"
|
||||||
|
|
||||||
@ -51,7 +51,7 @@ tmp<scalarField> nutkFilmWallFunctionFvPatchScalarField::calcUTau
|
|||||||
tmp<scalarField> tuTau(new scalarField(patch().size(), 0.0));
|
tmp<scalarField> tuTau(new scalarField(patch().size(), 0.0));
|
||||||
scalarField& uTau = tuTau.ref();
|
scalarField& uTau = tuTau.ref();
|
||||||
|
|
||||||
typedef regionModels::surfaceFilmModels::surfaceFilmModel modelType;
|
typedef regionModels::surfaceFilmModels::surfaceFilmRegionModel modelType;
|
||||||
|
|
||||||
bool foundFilm = db().time().foundObject<modelType>(filmRegionName_);
|
bool foundFilm = db().time().foundObject<modelType>(filmRegionName_);
|
||||||
|
|
||||||
|
|||||||
@ -49,13 +49,13 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
defineTypeNameAndDebug(kinematicSingleLayer, 0);
|
defineTypeNameAndDebug(kinematicSingleLayer, 0);
|
||||||
|
|
||||||
addToRunTimeSelectionTable(surfaceFilmModel, kinematicSingleLayer, mesh);
|
addToRunTimeSelectionTable(surfaceFilmRegionModel, kinematicSingleLayer, mesh);
|
||||||
|
|
||||||
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
|
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
|
||||||
|
|
||||||
bool kinematicSingleLayer::read()
|
bool kinematicSingleLayer::read()
|
||||||
{
|
{
|
||||||
if (surfaceFilmModel::read())
|
if (surfaceFilmRegionModel::read())
|
||||||
{
|
{
|
||||||
const dictionary& solution = this->solution().subDict("PISO");
|
const dictionary& solution = this->solution().subDict("PISO");
|
||||||
solution.lookup("momentumPredictor") >> momentumPredictor_;
|
solution.lookup("momentumPredictor") >> momentumPredictor_;
|
||||||
@ -458,7 +458,7 @@ kinematicSingleLayer::kinematicSingleLayer
|
|||||||
const bool readFields
|
const bool readFields
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
surfaceFilmModel(modelType, mesh, g, regionType),
|
surfaceFilmRegionModel(modelType, mesh, g, regionType),
|
||||||
|
|
||||||
momentumPredictor_(solution().subDict("PISO").lookup("momentumPredictor")),
|
momentumPredictor_(solution().subDict("PISO").lookup("momentumPredictor")),
|
||||||
nOuterCorr_(solution().subDict("PISO").lookupOrDefault("nOuterCorr", 1)),
|
nOuterCorr_(solution().subDict("PISO").lookupOrDefault("nOuterCorr", 1)),
|
||||||
@ -880,7 +880,7 @@ void kinematicSingleLayer::preEvolveRegion()
|
|||||||
InfoInFunction << endl;
|
InfoInFunction << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
surfaceFilmModel::preEvolveRegion();
|
surfaceFilmRegionModel::preEvolveRegion();
|
||||||
|
|
||||||
transferPrimaryRegionThermoFields();
|
transferPrimaryRegionThermoFields();
|
||||||
|
|
||||||
|
|||||||
@ -35,7 +35,7 @@ SourceFiles
|
|||||||
#ifndef kinematicSingleLayer_H
|
#ifndef kinematicSingleLayer_H
|
||||||
#define kinematicSingleLayer_H
|
#define kinematicSingleLayer_H
|
||||||
|
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
#include "fvMesh.H"
|
#include "fvMesh.H"
|
||||||
#include "volFields.H"
|
#include "volFields.H"
|
||||||
#include "surfaceFields.H"
|
#include "surfaceFields.H"
|
||||||
@ -64,7 +64,7 @@ class filmThermoModel;
|
|||||||
|
|
||||||
class kinematicSingleLayer
|
class kinematicSingleLayer
|
||||||
:
|
:
|
||||||
public surfaceFilmModel
|
public surfaceFilmRegionModel
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
|||||||
@ -41,23 +41,6 @@ namespace surfaceFilmModels
|
|||||||
defineTypeNameAndDebug(noFilm, 0);
|
defineTypeNameAndDebug(noFilm, 0);
|
||||||
addToRunTimeSelectionTable(surfaceFilmModel, noFilm, mesh);
|
addToRunTimeSelectionTable(surfaceFilmModel, noFilm, mesh);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
|
|
||||||
|
|
||||||
bool noFilm::read()
|
|
||||||
{
|
|
||||||
if (surfaceFilmModel::read())
|
|
||||||
{
|
|
||||||
// no additional info to read
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
noFilm::noFilm
|
noFilm::noFilm
|
||||||
@ -68,7 +51,8 @@ noFilm::noFilm
|
|||||||
const word& regionType
|
const word& regionType
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
surfaceFilmModel(modelType, mesh, g, regionType)
|
surfaceFilmModel(),
|
||||||
|
mesh_(mesh)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -80,174 +64,9 @@ noFilm::~noFilm()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
void noFilm::addSources
|
Foam::scalar noFilm::CourantNumber() const
|
||||||
(
|
|
||||||
const label,
|
|
||||||
const label,
|
|
||||||
const scalar,
|
|
||||||
const vector&,
|
|
||||||
const scalar,
|
|
||||||
const scalar
|
|
||||||
)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::delta() const
|
|
||||||
{
|
{
|
||||||
FatalErrorInFunction
|
return 0;
|
||||||
<< "delta field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::alpha() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "alpha field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volVectorField& noFilm::U() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "U field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volVectorField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volVectorField& noFilm::Us() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "Us field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volVectorField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volVectorField& noFilm::Uw() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "Uw field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volVectorField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::rho() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "rho field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::T() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "T field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::Ts() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "Ts field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::Tw() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "Tw field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::hs() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "hs field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::Cp() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "Cp field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::kappa() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "kappa field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::sigma() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "sigma field not available for " << type() << abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
tmp<volScalarField> noFilm::primaryMassTrans() const
|
|
||||||
{
|
|
||||||
return tmp<volScalarField>
|
|
||||||
(
|
|
||||||
new volScalarField
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"noFilm::primaryMassTrans",
|
|
||||||
time().timeName(),
|
|
||||||
primaryMesh(),
|
|
||||||
IOobject::NO_READ,
|
|
||||||
IOobject::NO_WRITE,
|
|
||||||
false
|
|
||||||
),
|
|
||||||
primaryMesh(),
|
|
||||||
dimensionedScalar("zero", dimMass/dimVolume/dimTime, 0.0)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::cloudMassTrans() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "cloudMassTrans field not available for " << type()
|
|
||||||
<< abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const volScalarField& noFilm::cloudDiameterTrans() const
|
|
||||||
{
|
|
||||||
FatalErrorInFunction
|
|
||||||
<< "cloudDiameterTrans field not available for " << type()
|
|
||||||
<< abort(FatalError);
|
|
||||||
|
|
||||||
return volScalarField::null();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -260,13 +79,13 @@ tmp<volScalarField::Internal> noFilm::Srho() const
|
|||||||
IOobject
|
IOobject
|
||||||
(
|
(
|
||||||
"noFilm::Srho",
|
"noFilm::Srho",
|
||||||
time().timeName(),
|
mesh_.time().timeName(),
|
||||||
primaryMesh(),
|
mesh_,
|
||||||
IOobject::NO_READ,
|
IOobject::NO_READ,
|
||||||
IOobject::NO_WRITE,
|
IOobject::NO_WRITE,
|
||||||
false
|
false
|
||||||
),
|
),
|
||||||
primaryMesh(),
|
mesh_,
|
||||||
dimensionedScalar("zero", dimMass/dimVolume/dimTime, 0.0)
|
dimensionedScalar("zero", dimMass/dimVolume/dimTime, 0.0)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
@ -282,13 +101,13 @@ tmp<volScalarField::Internal> noFilm::Srho(const label i) const
|
|||||||
IOobject
|
IOobject
|
||||||
(
|
(
|
||||||
"noFilm::Srho(" + Foam::name(i) + ")",
|
"noFilm::Srho(" + Foam::name(i) + ")",
|
||||||
time().timeName(),
|
mesh_.time().timeName(),
|
||||||
primaryMesh(),
|
mesh_,
|
||||||
IOobject::NO_READ,
|
IOobject::NO_READ,
|
||||||
IOobject::NO_WRITE,
|
IOobject::NO_WRITE,
|
||||||
false
|
false
|
||||||
),
|
),
|
||||||
primaryMesh(),
|
mesh_,
|
||||||
dimensionedScalar("zero", dimMass/dimVolume/dimTime, 0.0)
|
dimensionedScalar("zero", dimMass/dimVolume/dimTime, 0.0)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
@ -304,19 +123,23 @@ tmp<volScalarField::Internal> noFilm::Sh() const
|
|||||||
IOobject
|
IOobject
|
||||||
(
|
(
|
||||||
"noFilm::Sh",
|
"noFilm::Sh",
|
||||||
time().timeName(),
|
mesh_.time().timeName(),
|
||||||
primaryMesh(),
|
mesh_,
|
||||||
IOobject::NO_READ,
|
IOobject::NO_READ,
|
||||||
IOobject::NO_WRITE,
|
IOobject::NO_WRITE,
|
||||||
false
|
false
|
||||||
),
|
),
|
||||||
primaryMesh(),
|
mesh_,
|
||||||
dimensionedScalar("zero", dimEnergy/dimVolume/dimTime, 0.0)
|
dimensionedScalar("zero", dimEnergy/dimVolume/dimTime, 0.0)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void noFilm::evolve()
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
} // End namespace surfaceFilmModels
|
} // End namespace surfaceFilmModels
|
||||||
|
|||||||
@ -25,7 +25,8 @@ Class
|
|||||||
Foam::regionModels::surfaceFilmModels::noFilm
|
Foam::regionModels::surfaceFilmModels::noFilm
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Dummy surface film model for 'none'
|
Dummy surfaceFilmModel to allow solvers supporting film simulations to be
|
||||||
|
run without a film region.
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
noFilm.C
|
noFilm.C
|
||||||
@ -54,7 +55,11 @@ class noFilm
|
|||||||
:
|
:
|
||||||
public surfaceFilmModel
|
public surfaceFilmModel
|
||||||
{
|
{
|
||||||
private:
|
// Private member data
|
||||||
|
|
||||||
|
//- Reference to the mesh
|
||||||
|
const fvMesh& mesh_;
|
||||||
|
|
||||||
|
|
||||||
// Private member functions
|
// Private member functions
|
||||||
|
|
||||||
@ -65,14 +70,6 @@ private:
|
|||||||
void operator=(const noFilm&);
|
void operator=(const noFilm&);
|
||||||
|
|
||||||
|
|
||||||
protected:
|
|
||||||
|
|
||||||
// Protected member functions
|
|
||||||
|
|
||||||
//- Read control parameters from dictionary
|
|
||||||
virtual bool read();
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
//- Runtime type information
|
//- Runtime type information
|
||||||
@ -97,89 +94,31 @@ public:
|
|||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
// Access
|
// Solution parameters
|
||||||
|
|
||||||
//- External hook to add sources to the film
|
//- Courant number evaluation
|
||||||
virtual void addSources
|
virtual scalar CourantNumber() const;
|
||||||
|
|
||||||
|
|
||||||
|
// Primary region source fields
|
||||||
|
|
||||||
|
//- Return total mass source - Eulerian phase only
|
||||||
|
virtual tmp<volScalarField::Internal> Srho() const;
|
||||||
|
|
||||||
|
//- Return mass source for specie i - Eulerian phase only
|
||||||
|
virtual tmp<volScalarField::Internal> Srho
|
||||||
(
|
(
|
||||||
const label patchi,
|
const label i
|
||||||
const label facei,
|
) const;
|
||||||
const scalar massSource,
|
|
||||||
const vector& momentumSource,
|
//- Return enthalpy source - Eulerian phase only
|
||||||
const scalar pressureSource,
|
virtual tmp<volScalarField::Internal> Sh() const;
|
||||||
const scalar energySource
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// Fields
|
// Evolution
|
||||||
|
|
||||||
//- Return the film thickness [m]
|
//- Main driver routing to evolve the region - calls other evolves
|
||||||
virtual const volScalarField& delta() const;
|
virtual void evolve();
|
||||||
|
|
||||||
//- Return the film coverage, 1 = covered, 0 = uncovered / []
|
|
||||||
virtual const volScalarField& alpha() const;
|
|
||||||
|
|
||||||
//- Return the film velocity [m/s]
|
|
||||||
virtual const volVectorField& U() const;
|
|
||||||
|
|
||||||
//- Return the film density [kg/m3]
|
|
||||||
virtual const volScalarField& rho() const;
|
|
||||||
|
|
||||||
//- Return the film surface velocity [m/s]
|
|
||||||
virtual const volVectorField& Us() const;
|
|
||||||
|
|
||||||
//- Return the film wall velocity [m/s]
|
|
||||||
virtual const volVectorField& Uw() const;
|
|
||||||
|
|
||||||
//- Return the film mean temperature [K]
|
|
||||||
virtual const volScalarField& T() const;
|
|
||||||
|
|
||||||
//- Return the film surface temperature [K]
|
|
||||||
virtual const volScalarField& Ts() const;
|
|
||||||
|
|
||||||
//- Return the film wall temperature [K]
|
|
||||||
virtual const volScalarField& Tw() const;
|
|
||||||
|
|
||||||
//- Return the film surface enthalpy [J/kg]
|
|
||||||
virtual const volScalarField& hs() const;
|
|
||||||
|
|
||||||
//- Return the film specific heat capacity [J/kg/K]
|
|
||||||
virtual const volScalarField& Cp() const;
|
|
||||||
|
|
||||||
//- Return the film thermal conductivity [W/m/K]
|
|
||||||
virtual const volScalarField& kappa() const;
|
|
||||||
|
|
||||||
//- Return const access to the surface tension / [m/s2]
|
|
||||||
inline const volScalarField& sigma() const;
|
|
||||||
|
|
||||||
|
|
||||||
// Transfer fields - to the primary region
|
|
||||||
|
|
||||||
//- Return mass transfer source - Eulerian phase only
|
|
||||||
virtual tmp<volScalarField> primaryMassTrans() const;
|
|
||||||
|
|
||||||
//- Return the film mass available for transfer
|
|
||||||
virtual const volScalarField& cloudMassTrans() const;
|
|
||||||
|
|
||||||
//- Return the parcel diameters originating from film
|
|
||||||
virtual const volScalarField& cloudDiameterTrans() const;
|
|
||||||
|
|
||||||
|
|
||||||
// Source fields
|
|
||||||
|
|
||||||
// Mapped into primary region
|
|
||||||
|
|
||||||
//- Return total mass source - Eulerian phase only
|
|
||||||
virtual tmp<volScalarField::Internal> Srho() const;
|
|
||||||
|
|
||||||
//- Return mass source for specie i - Eulerian phase only
|
|
||||||
virtual tmp<volScalarField::Internal> Srho
|
|
||||||
(
|
|
||||||
const label i
|
|
||||||
) const;
|
|
||||||
|
|
||||||
//- Return enthalpy source - Eulerian phase only
|
|
||||||
virtual tmp<volScalarField::Internal> Sh() const;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -36,7 +36,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
filmSubModelBase::filmSubModelBase(surfaceFilmModel& film)
|
filmSubModelBase::filmSubModelBase(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
subModelBase(film.outputProperties()),
|
subModelBase(film.outputProperties()),
|
||||||
filmModel_(film)
|
filmModel_(film)
|
||||||
@ -45,7 +45,7 @@ filmSubModelBase::filmSubModelBase(surfaceFilmModel& film)
|
|||||||
|
|
||||||
filmSubModelBase::filmSubModelBase
|
filmSubModelBase::filmSubModelBase
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& baseName,
|
const word& baseName,
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
@ -67,7 +67,7 @@ filmSubModelBase::filmSubModelBase
|
|||||||
filmSubModelBase::filmSubModelBase
|
filmSubModelBase::filmSubModelBase
|
||||||
(
|
(
|
||||||
const word& modelName,
|
const word& modelName,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& baseName,
|
const word& baseName,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
|
|||||||
@ -36,7 +36,7 @@ SourceFiles
|
|||||||
#ifndef filmSubModelBase_H
|
#ifndef filmSubModelBase_H
|
||||||
#define filmSubModelBase_H
|
#define filmSubModelBase_H
|
||||||
|
|
||||||
#include "surfaceFilmModel.H"
|
#include "surfaceFilmRegionModel.H"
|
||||||
#include "subModelBase.H"
|
#include "subModelBase.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
@ -61,7 +61,7 @@ protected:
|
|||||||
// Protected data
|
// Protected data
|
||||||
|
|
||||||
//- Reference to the film surface film model
|
//- Reference to the film surface film model
|
||||||
surfaceFilmModel& filmModel_;
|
surfaceFilmRegionModel& filmModel_;
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@ -69,12 +69,12 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
filmSubModelBase(surfaceFilmModel& film);
|
filmSubModelBase(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from film film wihout name
|
//- Construct from film film wihout name
|
||||||
filmSubModelBase
|
filmSubModelBase
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& baseName,
|
const word& baseName,
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
@ -85,7 +85,7 @@ public:
|
|||||||
filmSubModelBase
|
filmSubModelBase
|
||||||
(
|
(
|
||||||
const word& modelName,
|
const word& modelName,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& baseName,
|
const word& baseName,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
@ -104,10 +104,10 @@ public:
|
|||||||
virtual bool writeTime() const;
|
virtual bool writeTime() const;
|
||||||
|
|
||||||
//- Return const access to the film surface film model
|
//- Return const access to the film surface film model
|
||||||
inline const surfaceFilmModel& film() const;
|
inline const surfaceFilmRegionModel& film() const;
|
||||||
|
|
||||||
//- Return the reference to the film surface film model
|
//- Return the reference to the film surface film model
|
||||||
inline surfaceFilmModel& film();
|
inline surfaceFilmRegionModel& film();
|
||||||
|
|
||||||
template<class FilmType>
|
template<class FilmType>
|
||||||
inline const FilmType& filmType() const;
|
inline const FilmType& filmType() const;
|
||||||
|
|||||||
@ -34,13 +34,13 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
inline const surfaceFilmModel& filmSubModelBase::film() const
|
inline const surfaceFilmRegionModel& filmSubModelBase::film() const
|
||||||
{
|
{
|
||||||
return filmModel_;
|
return filmModel_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
inline surfaceFilmModel& filmSubModelBase::film()
|
inline surfaceFilmRegionModel& filmSubModelBase::film()
|
||||||
{
|
{
|
||||||
return filmModel_;
|
return filmModel_;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -61,7 +61,7 @@ void constantFilmThermo::init(thermoData& td)
|
|||||||
|
|
||||||
constantFilmThermo::constantFilmThermo
|
constantFilmThermo::constantFilmThermo
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -140,7 +140,7 @@ public:
|
|||||||
//- Construct from surface film model and dictionary
|
//- Construct from surface film model and dictionary
|
||||||
constantFilmThermo
|
constantFilmThermo
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -43,7 +43,7 @@ defineRunTimeSelectionTable(filmThermoModel, dictionary);
|
|||||||
|
|
||||||
filmThermoModel::filmThermoModel
|
filmThermoModel::filmThermoModel
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film
|
surfaceFilmRegionModel& film
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
filmSubModelBase(film)
|
filmSubModelBase(film)
|
||||||
@ -53,7 +53,7 @@ filmThermoModel::filmThermoModel
|
|||||||
filmThermoModel::filmThermoModel
|
filmThermoModel::filmThermoModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -81,7 +81,7 @@ public:
|
|||||||
filmThermoModel,
|
filmThermoModel,
|
||||||
dictionary,
|
dictionary,
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
),
|
),
|
||||||
(film, dict)
|
(film, dict)
|
||||||
@ -90,13 +90,13 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
filmThermoModel(surfaceFilmModel& film);
|
filmThermoModel(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
filmThermoModel
|
filmThermoModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -106,7 +106,7 @@ public:
|
|||||||
//- Return a reference to the selected phase change model
|
//- Return a reference to the selected phase change model
|
||||||
static autoPtr<filmThermoModel> New
|
static autoPtr<filmThermoModel> New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2013-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2013-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -38,7 +38,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
autoPtr<filmThermoModel> filmThermoModel::New
|
autoPtr<filmThermoModel> filmThermoModel::New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& model,
|
surfaceFilmRegionModel& model,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -103,7 +103,7 @@ void liquidFilmThermo::initLiquid(const dictionary& dict)
|
|||||||
|
|
||||||
liquidFilmThermo::liquidFilmThermo
|
liquidFilmThermo::liquidFilmThermo
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -107,7 +107,7 @@ public:
|
|||||||
//- Construct from surface film model and dictionary
|
//- Construct from surface film model and dictionary
|
||||||
liquidFilmThermo
|
liquidFilmThermo
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,7 @@ defineRunTimeSelectionTable(filmTurbulenceModel, dictionary);
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
filmTurbulenceModel::filmTurbulenceModel(surfaceFilmModel& film)
|
filmTurbulenceModel::filmTurbulenceModel(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
filmSubModelBase(film)
|
filmSubModelBase(film)
|
||||||
{}
|
{}
|
||||||
@ -50,7 +50,7 @@ filmTurbulenceModel::filmTurbulenceModel(surfaceFilmModel& film)
|
|||||||
filmTurbulenceModel::filmTurbulenceModel
|
filmTurbulenceModel::filmTurbulenceModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -83,7 +83,7 @@ public:
|
|||||||
filmTurbulenceModel,
|
filmTurbulenceModel,
|
||||||
dictionary,
|
dictionary,
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
),
|
),
|
||||||
(film, dict)
|
(film, dict)
|
||||||
@ -92,13 +92,13 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
filmTurbulenceModel(surfaceFilmModel& film);
|
filmTurbulenceModel(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
filmTurbulenceModel
|
filmTurbulenceModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -108,7 +108,7 @@ public:
|
|||||||
//- Return a reference to the selected injection model
|
//- Return a reference to the selected injection model
|
||||||
static autoPtr<filmTurbulenceModel> New
|
static autoPtr<filmTurbulenceModel> New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2013-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2013-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -38,7 +38,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
autoPtr<filmTurbulenceModel> filmTurbulenceModel::New
|
autoPtr<filmTurbulenceModel> filmTurbulenceModel::New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& model,
|
surfaceFilmRegionModel& model,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -51,7 +51,7 @@ addToRunTimeSelectionTable(filmTurbulenceModel, laminar, dictionary);
|
|||||||
|
|
||||||
laminar::laminar
|
laminar::laminar
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -80,7 +80,7 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
laminar(surfaceFilmModel& film, const dictionary& dict);
|
laminar(surfaceFilmRegionModel& film, const dictionary& dict);
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
|
|||||||
@ -95,7 +95,7 @@ void contactAngleForce::initialise()
|
|||||||
contactAngleForce::contactAngleForce
|
contactAngleForce::contactAngleForce
|
||||||
(
|
(
|
||||||
const word& typeName,
|
const word& typeName,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -96,7 +96,7 @@ public:
|
|||||||
contactAngleForce
|
contactAngleForce
|
||||||
(
|
(
|
||||||
const word& typeName,
|
const word& typeName,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -45,7 +45,7 @@ addToRunTimeSelectionTable(force, distributionContactAngleForce, dictionary);
|
|||||||
|
|
||||||
distributionContactAngleForce::distributionContactAngleForce
|
distributionContactAngleForce::distributionContactAngleForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -95,7 +95,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
distributionContactAngleForce
|
distributionContactAngleForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -51,7 +51,7 @@ addToRunTimeSelectionTable
|
|||||||
perturbedTemperatureDependentContactAngleForce::
|
perturbedTemperatureDependentContactAngleForce::
|
||||||
perturbedTemperatureDependentContactAngleForce
|
perturbedTemperatureDependentContactAngleForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -111,7 +111,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
perturbedTemperatureDependentContactAngleForce
|
perturbedTemperatureDependentContactAngleForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -50,7 +50,7 @@ addToRunTimeSelectionTable
|
|||||||
|
|
||||||
temperatureDependentContactAngleForce::temperatureDependentContactAngleForce
|
temperatureDependentContactAngleForce::temperatureDependentContactAngleForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -97,7 +97,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
temperatureDependentContactAngleForce
|
temperatureDependentContactAngleForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,7 @@ defineRunTimeSelectionTable(force, dictionary);
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
force::force(surfaceFilmModel& film)
|
force::force(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
filmSubModelBase(film)
|
filmSubModelBase(film)
|
||||||
{}
|
{}
|
||||||
@ -50,7 +50,7 @@ force::force(surfaceFilmModel& film)
|
|||||||
force::force
|
force::force
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -82,7 +82,7 @@ public:
|
|||||||
force,
|
force,
|
||||||
dictionary,
|
dictionary,
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
),
|
),
|
||||||
(film, dict)
|
(film, dict)
|
||||||
@ -91,13 +91,13 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
force(surfaceFilmModel& film);
|
force(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
force
|
force
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -107,7 +107,7 @@ public:
|
|||||||
//- Return a reference to the selected force model
|
//- Return a reference to the selected force model
|
||||||
static autoPtr<force> New
|
static autoPtr<force> New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
);
|
);
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -38,7 +38,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
autoPtr<force> force::New
|
autoPtr<force> force::New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& model,
|
surfaceFilmRegionModel& model,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
)
|
)
|
||||||
|
|||||||
@ -36,7 +36,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
forceList::forceList(surfaceFilmModel& film)
|
forceList::forceList(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
PtrList<force>()
|
PtrList<force>()
|
||||||
{}
|
{}
|
||||||
@ -44,7 +44,7 @@ forceList::forceList(surfaceFilmModel& film)
|
|||||||
|
|
||||||
forceList::forceList
|
forceList::forceList
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -60,12 +60,12 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
forceList(surfaceFilmModel& film);
|
forceList(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
forceList
|
forceList
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -45,7 +45,7 @@ addToRunTimeSelectionTable(force, thermocapillaryForce, dictionary);
|
|||||||
|
|
||||||
thermocapillaryForce::thermocapillaryForce
|
thermocapillaryForce::thermocapillaryForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -76,7 +76,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
thermocapillaryForce
|
thermocapillaryForce
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -45,7 +45,7 @@ addToRunTimeSelectionTable(injectionModel, BrunDrippingInjection, dictionary);
|
|||||||
|
|
||||||
BrunDrippingInjection::BrunDrippingInjection
|
BrunDrippingInjection::BrunDrippingInjection
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -118,7 +118,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
BrunDrippingInjection
|
BrunDrippingInjection
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -220,7 +220,7 @@ tmp<scalarField> curvatureSeparation::calcCosAngle
|
|||||||
|
|
||||||
curvatureSeparation::curvatureSeparation
|
curvatureSeparation::curvatureSeparation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -121,7 +121,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
curvatureSeparation
|
curvatureSeparation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -50,7 +50,7 @@ addToRunTimeSelectionTable(injectionModel, drippingInjection, dictionary);
|
|||||||
|
|
||||||
drippingInjection::drippingInjection
|
drippingInjection::drippingInjection
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -105,7 +105,7 @@ public:
|
|||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
drippingInjection
|
drippingInjection
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -49,7 +49,7 @@ void injectionModel::addToInjectedMass(const scalar dMass)
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
injectionModel::injectionModel(surfaceFilmModel& film)
|
injectionModel::injectionModel(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
filmSubModelBase(film),
|
filmSubModelBase(film),
|
||||||
injectedMass_(0.0)
|
injectedMass_(0.0)
|
||||||
@ -59,7 +59,7 @@ injectionModel::injectionModel(surfaceFilmModel& film)
|
|||||||
injectionModel::injectionModel
|
injectionModel::injectionModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -98,7 +98,7 @@ public:
|
|||||||
injectionModel,
|
injectionModel,
|
||||||
dictionary,
|
dictionary,
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
),
|
),
|
||||||
(film, dict)
|
(film, dict)
|
||||||
@ -108,13 +108,13 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
injectionModel(surfaceFilmModel& film);
|
injectionModel(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
injectionModel
|
injectionModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -124,7 +124,7 @@ public:
|
|||||||
//- Return a reference to the selected injection model
|
//- Return a reference to the selected injection model
|
||||||
static autoPtr<injectionModel> New
|
static autoPtr<injectionModel> New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& mdoelType
|
const word& mdoelType
|
||||||
);
|
);
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -38,7 +38,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
autoPtr<injectionModel> injectionModel::New
|
autoPtr<injectionModel> injectionModel::New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& model,
|
surfaceFilmRegionModel& model,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
)
|
)
|
||||||
|
|||||||
@ -36,7 +36,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
injectionModelList::injectionModelList(surfaceFilmModel& film)
|
injectionModelList::injectionModelList(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
PtrList<injectionModel>(),
|
PtrList<injectionModel>(),
|
||||||
filmSubModelBase(film)
|
filmSubModelBase(film)
|
||||||
@ -45,7 +45,7 @@ injectionModelList::injectionModelList(surfaceFilmModel& film)
|
|||||||
|
|
||||||
injectionModelList::injectionModelList
|
injectionModelList::injectionModelList
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -79,12 +79,12 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
injectionModelList(surfaceFilmModel& film);
|
injectionModelList(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
injectionModelList
|
injectionModelList
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -44,7 +44,7 @@ addToRunTimeSelectionTable(injectionModel, patchInjection, dictionary);
|
|||||||
|
|
||||||
patchInjection::patchInjection
|
patchInjection::patchInjection
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -86,7 +86,7 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from surface film model
|
//- Construct from surface film model
|
||||||
patchInjection(surfaceFilmModel& film, const dictionary& dict);
|
patchInjection(surfaceFilmRegionModel& film, const dictionary& dict);
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
|
|||||||
@ -49,7 +49,7 @@ void transferModel::addToTransferredMass(const scalar dMass)
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
transferModel::transferModel(surfaceFilmModel& film)
|
transferModel::transferModel(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
filmSubModelBase(film),
|
filmSubModelBase(film),
|
||||||
transferredMass_(0.0)
|
transferredMass_(0.0)
|
||||||
@ -59,7 +59,7 @@ transferModel::transferModel(surfaceFilmModel& film)
|
|||||||
transferModel::transferModel
|
transferModel::transferModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -98,7 +98,7 @@ public:
|
|||||||
transferModel,
|
transferModel,
|
||||||
dictionary,
|
dictionary,
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
),
|
),
|
||||||
(film, dict)
|
(film, dict)
|
||||||
@ -108,13 +108,13 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct for film
|
//- Construct for film
|
||||||
transferModel(surfaceFilmModel& film);
|
transferModel(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
transferModel
|
transferModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -124,7 +124,7 @@ public:
|
|||||||
//- Return a reference to the selected injection model
|
//- Return a reference to the selected injection model
|
||||||
static autoPtr<transferModel> New
|
static autoPtr<transferModel> New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
);
|
);
|
||||||
|
|||||||
@ -38,7 +38,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
autoPtr<transferModel> transferModel::New
|
autoPtr<transferModel> transferModel::New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& model,
|
surfaceFilmRegionModel& model,
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
const word& modelType
|
const word& modelType
|
||||||
)
|
)
|
||||||
|
|||||||
@ -36,7 +36,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
transferModelList::transferModelList(surfaceFilmModel& film)
|
transferModelList::transferModelList(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
PtrList<transferModel>(),
|
PtrList<transferModel>(),
|
||||||
filmSubModelBase(film)
|
filmSubModelBase(film)
|
||||||
@ -45,7 +45,7 @@ transferModelList::transferModelList(surfaceFilmModel& film)
|
|||||||
|
|
||||||
transferModelList::transferModelList
|
transferModelList::transferModelList
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -77,12 +77,12 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
transferModelList(surfaceFilmModel& film);
|
transferModelList(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
transferModelList
|
transferModelList
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -51,7 +51,7 @@ addToRunTimeSelectionTable
|
|||||||
|
|
||||||
constantRadiation::constantRadiation
|
constantRadiation::constantRadiation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -98,7 +98,7 @@ public:
|
|||||||
//- Construct from surface film model and dictionary
|
//- Construct from surface film model and dictionary
|
||||||
constantRadiation
|
constantRadiation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,7 @@ defineRunTimeSelectionTable(filmRadiationModel, dictionary);
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
filmRadiationModel::filmRadiationModel(surfaceFilmModel& film)
|
filmRadiationModel::filmRadiationModel(surfaceFilmRegionModel& film)
|
||||||
:
|
:
|
||||||
filmSubModelBase(film)
|
filmSubModelBase(film)
|
||||||
{}
|
{}
|
||||||
@ -50,7 +50,7 @@ filmRadiationModel::filmRadiationModel(surfaceFilmModel& film)
|
|||||||
filmRadiationModel::filmRadiationModel
|
filmRadiationModel::filmRadiationModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -81,7 +81,7 @@ public:
|
|||||||
filmRadiationModel,
|
filmRadiationModel,
|
||||||
dictionary,
|
dictionary,
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
),
|
),
|
||||||
(film, dict)
|
(film, dict)
|
||||||
@ -90,13 +90,13 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct null
|
//- Construct null
|
||||||
filmRadiationModel(surfaceFilmModel& film);
|
filmRadiationModel(surfaceFilmRegionModel& film);
|
||||||
|
|
||||||
//- Construct from type name, dictionary and surface film model
|
//- Construct from type name, dictionary and surface film model
|
||||||
filmRadiationModel
|
filmRadiationModel
|
||||||
(
|
(
|
||||||
const word& modelType,
|
const word& modelType,
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -106,7 +106,7 @@ public:
|
|||||||
//- Return a reference to the selected phase change model
|
//- Return a reference to the selected phase change model
|
||||||
static autoPtr<filmRadiationModel> New
|
static autoPtr<filmRadiationModel> New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -38,7 +38,7 @@ namespace surfaceFilmModels
|
|||||||
|
|
||||||
autoPtr<filmRadiationModel> filmRadiationModel::New
|
autoPtr<filmRadiationModel> filmRadiationModel::New
|
||||||
(
|
(
|
||||||
surfaceFilmModel& model,
|
surfaceFilmRegionModel& model,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -51,7 +51,7 @@ addToRunTimeSelectionTable
|
|||||||
|
|
||||||
noRadiation::noRadiation
|
noRadiation::noRadiation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -77,7 +77,7 @@ public:
|
|||||||
//- Construct from surface film model and dictionary
|
//- Construct from surface film model and dictionary
|
||||||
noRadiation
|
noRadiation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -51,7 +51,7 @@ addToRunTimeSelectionTable
|
|||||||
|
|
||||||
primaryRadiation::primaryRadiation
|
primaryRadiation::primaryRadiation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
|
|||||||
@ -84,7 +84,7 @@ public:
|
|||||||
//- Construct from surface film model and dictionary
|
//- Construct from surface film model and dictionary
|
||||||
primaryRadiation
|
primaryRadiation
|
||||||
(
|
(
|
||||||
surfaceFilmModel& film,
|
surfaceFilmRegionModel& film,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user