sonicFoam, sonicDyMFoam, sonicLiquidFoam: Functionality merged into rhoPimpleFoam
The sonicFoam, sonicDyMFoam and sonicLiquidFoam functionality has been merged
into the transonic option of the latest rhoPimpleFoam solver and the
corresponding tutorials moved into the rhoPimpleFoam tutorials directory.
To run rhoPimpleFoam in transonic mode set the transonic option in the
PIMPLE sub-dictionary of fvSolution:
PIMPLE
{
.
.
.
transonic yes;
}
This commit is contained in:
@ -141,7 +141,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pimple.nCorrPimple() <= 1)
|
if (pimple.firstIter())
|
||||||
{
|
{
|
||||||
#include "rhoEqn.H"
|
#include "rhoEqn.H"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,21 +0,0 @@
|
|||||||
{
|
|
||||||
fvScalarMatrix EEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(rho, e) + fvm::div(phi, e)
|
|
||||||
+ fvc::ddt(rho, K) + fvc::div(phi, K)
|
|
||||||
+ fvc::div(fvc::absolute(phi/fvc::interpolate(rho), U), p, "div(phiv,p)")
|
|
||||||
- fvm::laplacian(turbulence->alphaEff(), e)
|
|
||||||
==
|
|
||||||
fvOptions(rho, e)
|
|
||||||
);
|
|
||||||
|
|
||||||
EEqn.relax();
|
|
||||||
|
|
||||||
fvOptions.constrain(EEqn);
|
|
||||||
|
|
||||||
EEqn.solve();
|
|
||||||
|
|
||||||
fvOptions.correct(e);
|
|
||||||
|
|
||||||
thermo.correct();
|
|
||||||
}
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
sonicFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_APPBIN)/sonicFoam
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I$(LIB_SRC)/transportModels/compressible/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
|
||||||
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
|
|
||||||
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
|
|
||||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
|
||||||
-I$(LIB_SRC)/sampling/lnInclude \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lcompressibleTransportModels \
|
|
||||||
-lfluidThermophysicalModels \
|
|
||||||
-lspecie \
|
|
||||||
-lturbulenceModels \
|
|
||||||
-lcompressibleTurbulenceModels \
|
|
||||||
-lmeshTools \
|
|
||||||
-lsampling \
|
|
||||||
-lfvOptions \
|
|
||||||
-lfiniteVolume
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
// Solve the Momentum equation
|
|
||||||
|
|
||||||
MRF.correctBoundaryVelocity(U);
|
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(rho, U) + fvm::div(phi, U)
|
|
||||||
+ MRF.DDt(rho, U)
|
|
||||||
+ turbulence->divDevRhoReff(U)
|
|
||||||
==
|
|
||||||
fvOptions(rho, U)
|
|
||||||
);
|
|
||||||
|
|
||||||
UEqn.relax();
|
|
||||||
|
|
||||||
fvOptions.constrain(UEqn);
|
|
||||||
|
|
||||||
if (pimple.momentumPredictor())
|
|
||||||
{
|
|
||||||
solve(UEqn == -fvc::grad(p));
|
|
||||||
|
|
||||||
fvOptions.correct(U);
|
|
||||||
K = 0.5*magSqr(U);
|
|
||||||
}
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
volScalarField& e = thermo.he();
|
|
||||||
const volScalarField& psi = thermo.psi();
|
|
||||||
@ -1,57 +0,0 @@
|
|||||||
Info<< "Reading thermophysical properties\n" << endl;
|
|
||||||
|
|
||||||
autoPtr<psiThermo> pThermo
|
|
||||||
(
|
|
||||||
psiThermo::New(mesh)
|
|
||||||
);
|
|
||||||
psiThermo& thermo = pThermo();
|
|
||||||
thermo.validate(args.executable(), "e");
|
|
||||||
|
|
||||||
volScalarField& p = thermo.p();
|
|
||||||
|
|
||||||
volScalarField rho
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"rho",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh
|
|
||||||
),
|
|
||||||
thermo.rho()
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Reading field U\n" << endl;
|
|
||||||
volVectorField U
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"U",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
#include "compressibleCreatePhi.H"
|
|
||||||
|
|
||||||
mesh.setFluxRequired(p.name());
|
|
||||||
|
|
||||||
Info<< "Creating turbulence model\n" << endl;
|
|
||||||
autoPtr<compressible::turbulenceModel> turbulence
|
|
||||||
(
|
|
||||||
compressible::turbulenceModel::New
|
|
||||||
(
|
|
||||||
rho,
|
|
||||||
U,
|
|
||||||
phi,
|
|
||||||
thermo
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Creating field kinetic energy K\n" << endl;
|
|
||||||
volScalarField K("K", 0.5*magSqr(U));
|
|
||||||
|
|
||||||
#include "createMRF.H"
|
|
||||||
#include "createFvOptions.H"
|
|
||||||
@ -1,44 +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 phid
|
|
||||||
(
|
|
||||||
"phid",
|
|
||||||
fvc::interpolate(psi)
|
|
||||||
*(
|
|
||||||
fvc::flux(HbyA)
|
|
||||||
+ MRF.zeroFilter(rhorAUf*fvc::ddtCorr(rho, U, phi)/fvc::interpolate(rho))
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
MRF.makeRelative(fvc::interpolate(psi), phid);
|
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
|
||||||
while (pimple.correctNonOrthogonal())
|
|
||||||
{
|
|
||||||
fvScalarMatrix pEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(psi, p)
|
|
||||||
+ fvm::div(phid, p)
|
|
||||||
- fvm::laplacian(rhorAUf, p)
|
|
||||||
==
|
|
||||||
fvOptions(psi, p, rho.name())
|
|
||||||
);
|
|
||||||
|
|
||||||
pEqn.solve();
|
|
||||||
|
|
||||||
if (pimple.finalNonOrthogonalIter())
|
|
||||||
{
|
|
||||||
phi = pEqn.flux();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
#include "compressibleContinuityErrs.H"
|
|
||||||
|
|
||||||
U = HbyA - rAU*fvc::grad(p);
|
|
||||||
U.correctBoundaryConditions();
|
|
||||||
fvOptions.correct(U);
|
|
||||||
K = 0.5*magSqr(U);
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
sonicDyMFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_APPBIN)/sonicDyMFoam
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I.. \
|
|
||||||
-I../../rhoPimpleFoam \
|
|
||||||
-I$(LIB_SRC)/transportModels/compressible/lnInclude \
|
|
||||||
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
|
|
||||||
-I$(LIB_SRC)/TurbulenceModels/turbulenceModels/lnInclude \
|
|
||||||
-I$(LIB_SRC)/TurbulenceModels/compressible/lnInclude \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/cfdTools \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
|
||||||
-I$(LIB_SRC)/sampling/lnInclude \
|
|
||||||
-I$(LIB_SRC)/dynamicFvMesh/lnInclude \
|
|
||||||
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
|
||||||
-I$(LIB_SRC)/meshTools/lnInclude \
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lcompressibleTransportModels \
|
|
||||||
-lfluidThermophysicalModels \
|
|
||||||
-lspecie \
|
|
||||||
-lturbulenceModels \
|
|
||||||
-lcompressibleTurbulenceModels \
|
|
||||||
-lfiniteVolume \
|
|
||||||
-lmeshTools \
|
|
||||||
-lsampling \
|
|
||||||
-lfvOptions \
|
|
||||||
-ldynamicFvMesh \
|
|
||||||
-ltopoChangerFvMesh \
|
|
||||||
-ldynamicMesh \
|
|
||||||
-lmeshTools
|
|
||||||
@ -1,51 +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 phid
|
|
||||||
(
|
|
||||||
"phid",
|
|
||||||
fvc::interpolate(psi)
|
|
||||||
*(
|
|
||||||
fvc::flux(HbyA)
|
|
||||||
+ rhorAUf*fvc::ddtCorr(rho, U, rhoUf)/fvc::interpolate(rho)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
fvc::makeRelative(phid, psi, U);
|
|
||||||
MRF.makeRelative(fvc::interpolate(psi), phid);
|
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
|
||||||
while (pimple.correctNonOrthogonal())
|
|
||||||
{
|
|
||||||
fvScalarMatrix pEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(psi, p)
|
|
||||||
+ fvm::div(phid, p)
|
|
||||||
- fvm::laplacian(rhorAUf, p)
|
|
||||||
==
|
|
||||||
fvOptions(psi, p, rho.name())
|
|
||||||
);
|
|
||||||
|
|
||||||
pEqn.solve();
|
|
||||||
|
|
||||||
if (pimple.finalNonOrthogonalIter())
|
|
||||||
{
|
|
||||||
phi = pEqn.flux();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
#include "compressibleContinuityErrs.H"
|
|
||||||
|
|
||||||
U = HbyA - rAU*fvc::grad(p);
|
|
||||||
U.correctBoundaryConditions();
|
|
||||||
fvOptions.correct(U);
|
|
||||||
K = 0.5*magSqr(U);
|
|
||||||
|
|
||||||
{
|
|
||||||
rhoUf = fvc::interpolate(rho*U);
|
|
||||||
surfaceVectorField n(mesh.Sf()/mesh.magSf());
|
|
||||||
rhoUf += n*(fvc::absolute(phi, rho, U)/mesh.magSf() - (n & rhoUf));
|
|
||||||
}
|
|
||||||
@ -1,151 +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
|
|
||||||
sonicDyMFoam
|
|
||||||
|
|
||||||
Group
|
|
||||||
grpCompressibleSolvers grpMovingMeshSolvers
|
|
||||||
|
|
||||||
Description
|
|
||||||
Transient solver for trans-sonic/supersonic, turbulent flow of a
|
|
||||||
compressible gas, with optional mesh motion and mesh topology changes.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "dynamicFvMesh.H"
|
|
||||||
#include "psiThermo.H"
|
|
||||||
#include "turbulentFluidThermoModel.H"
|
|
||||||
#include "pimpleControl.H"
|
|
||||||
#include "CorrectPhi.H"
|
|
||||||
#include "fvOptions.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "postProcess.H"
|
|
||||||
|
|
||||||
#include "setRootCase.H"
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createDynamicFvMesh.H"
|
|
||||||
#include "createDyMControls.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "createFieldRefs.H"
|
|
||||||
#include "createRhoUf.H"
|
|
||||||
#include "compressibleCourantNo.H"
|
|
||||||
#include "setInitialDeltaT.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
turbulence->validate();
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (runTime.run())
|
|
||||||
{
|
|
||||||
#include "readDyMControls.H"
|
|
||||||
|
|
||||||
{
|
|
||||||
// Store divrhoU from the previous mesh so that it can be mapped
|
|
||||||
// and used in correctPhi to ensure the corrected phi has the
|
|
||||||
// same divergence
|
|
||||||
volScalarField divrhoU
|
|
||||||
(
|
|
||||||
"divrhoU",
|
|
||||||
fvc::div(fvc::absolute(phi, rho, U))
|
|
||||||
);
|
|
||||||
|
|
||||||
#include "compressibleCourantNo.H"
|
|
||||||
#include "setDeltaT.H"
|
|
||||||
|
|
||||||
runTime++;
|
|
||||||
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
// Store momentum to set rhoUf for introduced faces.
|
|
||||||
volVectorField rhoU("rhoU", rho*U);
|
|
||||||
|
|
||||||
// Do any mesh changes
|
|
||||||
mesh.update();
|
|
||||||
|
|
||||||
if (mesh.changing())
|
|
||||||
{
|
|
||||||
MRF.update();
|
|
||||||
|
|
||||||
if (correctPhi)
|
|
||||||
{
|
|
||||||
// Calculate absolute flux from the mapped surface velocity
|
|
||||||
phi = mesh.Sf() & rhoUf;
|
|
||||||
|
|
||||||
#include "correctPhi.H"
|
|
||||||
|
|
||||||
// Make the fluxes relative to the mesh-motion
|
|
||||||
fvc::makeRelative(phi, rho, U);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (checkMeshCourantNo)
|
|
||||||
{
|
|
||||||
#include "meshCourantNo.H"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
Info<< "rhoEqn max/min : " << max(rho).value()
|
|
||||||
<< " " << min(rho).value() << endl;
|
|
||||||
|
|
||||||
// --- Pressure-velocity PIMPLE corrector loop
|
|
||||||
while (pimple.loop())
|
|
||||||
{
|
|
||||||
#include "UEqn.H"
|
|
||||||
#include "EEqn.H"
|
|
||||||
|
|
||||||
// --- Pressure corrector loop
|
|
||||||
while (pimple.correct())
|
|
||||||
{
|
|
||||||
#include "pEqn.H"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pimple.turbCorr())
|
|
||||||
{
|
|
||||||
turbulence->correct();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
runTime.write();
|
|
||||||
|
|
||||||
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
|
||||||
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
|
||||||
<< nl << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "End\n" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,103 +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
|
|
||||||
sonicFoam
|
|
||||||
|
|
||||||
Group
|
|
||||||
grpCompressibleSolvers
|
|
||||||
|
|
||||||
Description
|
|
||||||
Transient solver for trans-sonic/supersonic, turbulent flow of a
|
|
||||||
compressible gas.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "psiThermo.H"
|
|
||||||
#include "turbulentFluidThermoModel.H"
|
|
||||||
#include "pimpleControl.H"
|
|
||||||
#include "fvOptions.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "postProcess.H"
|
|
||||||
|
|
||||||
#include "setRootCase.H"
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createMesh.H"
|
|
||||||
#include "createControl.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "createFieldRefs.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
turbulence->validate();
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (runTime.loop())
|
|
||||||
{
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
#include "compressibleCourantNo.H"
|
|
||||||
|
|
||||||
#include "rhoEqn.H"
|
|
||||||
|
|
||||||
// --- Pressure-velocity PIMPLE corrector loop
|
|
||||||
while (pimple.loop())
|
|
||||||
{
|
|
||||||
#include "UEqn.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\n" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
sonicLiquidFoam.C
|
|
||||||
|
|
||||||
EXE = $(FOAM_APPBIN)/sonicLiquidFoam
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
EXE_INC = \
|
|
||||||
-I$(LIB_SRC)/finiteVolume/lnInclude \
|
|
||||||
-I$(LIB_SRC)/meshTools/lnInclude
|
|
||||||
|
|
||||||
EXE_LIBS = \
|
|
||||||
-lfiniteVolume \
|
|
||||||
-lmeshTools
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
scalar sumLocalContErr =
|
|
||||||
(sum(mag(rho - rho0 - psi*(p - p0)))/sum(rho)).value();
|
|
||||||
|
|
||||||
scalar globalContErr = (sum(rho - rho0 - psi*(p - p0))/sum(rho)).value();
|
|
||||||
|
|
||||||
cumulativeContErr += globalContErr;
|
|
||||||
|
|
||||||
Info<< "time step continuity errors : sum local = " << sumLocalContErr
|
|
||||||
<< ", global = " << globalContErr
|
|
||||||
<< ", cumulative = " << cumulativeContErr << endl;
|
|
||||||
}
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
#include "readThermodynamicProperties.H"
|
|
||||||
#include "readTransportProperties.H"
|
|
||||||
|
|
||||||
Info<< "Reading field p\n" << endl;
|
|
||||||
volScalarField p
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"p",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
Info<< "Reading field U\n" << endl;
|
|
||||||
volVectorField U
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"U",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
mesh
|
|
||||||
);
|
|
||||||
|
|
||||||
volScalarField rho
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"rho",
|
|
||||||
runTime.timeName(),
|
|
||||||
mesh,
|
|
||||||
IOobject::NO_READ,
|
|
||||||
IOobject::AUTO_WRITE
|
|
||||||
),
|
|
||||||
rhoO + psi*p
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
#include "compressibleCreatePhi.H"
|
|
||||||
|
|
||||||
mesh.setFluxRequired(p.name());
|
|
||||||
@ -1,37 +0,0 @@
|
|||||||
Info<< "Reading thermodynamicProperties\n" << endl;
|
|
||||||
|
|
||||||
IOdictionary thermodynamicProperties
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"thermodynamicProperties",
|
|
||||||
runTime.constant(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ_IF_MODIFIED,
|
|
||||||
IOobject::NO_WRITE
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
dimensionedScalar rho0
|
|
||||||
(
|
|
||||||
"rho0",
|
|
||||||
dimDensity,
|
|
||||||
thermodynamicProperties
|
|
||||||
);
|
|
||||||
|
|
||||||
dimensionedScalar p0
|
|
||||||
(
|
|
||||||
"p0",
|
|
||||||
dimPressure,
|
|
||||||
thermodynamicProperties
|
|
||||||
);
|
|
||||||
|
|
||||||
dimensionedScalar psi
|
|
||||||
(
|
|
||||||
"psi",
|
|
||||||
dimCompressibility,
|
|
||||||
thermodynamicProperties
|
|
||||||
);
|
|
||||||
|
|
||||||
// Density offset, i.e. the constant part of the density
|
|
||||||
dimensionedScalar rhoO("rhoO", rho0 - psi*p0);
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
Info<< "Reading transportProperties\n" << endl;
|
|
||||||
|
|
||||||
IOdictionary transportProperties
|
|
||||||
(
|
|
||||||
IOobject
|
|
||||||
(
|
|
||||||
"transportProperties",
|
|
||||||
runTime.constant(),
|
|
||||||
mesh,
|
|
||||||
IOobject::MUST_READ_IF_MODIFIED,
|
|
||||||
IOobject::NO_WRITE
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
dimensionedScalar mu
|
|
||||||
(
|
|
||||||
"mu",
|
|
||||||
dimDynamicViscosity,
|
|
||||||
transportProperties
|
|
||||||
);
|
|
||||||
@ -1,132 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 2011-2016 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
|
|
||||||
sonicLiquidFoam
|
|
||||||
|
|
||||||
Description
|
|
||||||
Transient solver for trans-sonic/supersonic, laminar flow of a
|
|
||||||
compressible liquid.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "fvCFD.H"
|
|
||||||
#include "pimpleControl.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
#include "postProcess.H"
|
|
||||||
|
|
||||||
#include "setRootCase.H"
|
|
||||||
#include "createTime.H"
|
|
||||||
#include "createMesh.H"
|
|
||||||
#include "createControl.H"
|
|
||||||
#include "createFields.H"
|
|
||||||
#include "initContinuityErrs.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Info<< "\nStarting time loop\n" << endl;
|
|
||||||
|
|
||||||
while (runTime.loop())
|
|
||||||
{
|
|
||||||
Info<< "Time = " << runTime.timeName() << nl << endl;
|
|
||||||
|
|
||||||
#include "compressibleCourantNo.H"
|
|
||||||
|
|
||||||
solve(fvm::ddt(rho) + fvc::div(phi));
|
|
||||||
|
|
||||||
// --- Pressure-velocity PIMPLE corrector loop
|
|
||||||
while (pimple.loop())
|
|
||||||
{
|
|
||||||
fvVectorMatrix UEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(rho, U)
|
|
||||||
+ fvm::div(phi, U)
|
|
||||||
- fvm::laplacian(mu, U)
|
|
||||||
);
|
|
||||||
|
|
||||||
solve(UEqn == -fvc::grad(p));
|
|
||||||
|
|
||||||
// --- Pressure corrector loop
|
|
||||||
while (pimple.correct())
|
|
||||||
{
|
|
||||||
volScalarField rAU("rAU", 1.0/UEqn.A());
|
|
||||||
surfaceScalarField rhorAUf
|
|
||||||
(
|
|
||||||
"rhorAUf",
|
|
||||||
fvc::interpolate(rho*rAU)
|
|
||||||
);
|
|
||||||
|
|
||||||
U = rAU*UEqn.H();
|
|
||||||
|
|
||||||
surfaceScalarField phid
|
|
||||||
(
|
|
||||||
"phid",
|
|
||||||
psi
|
|
||||||
*(
|
|
||||||
fvc::flux(U)
|
|
||||||
+ rhorAUf*fvc::ddtCorr(rho, U, phi)/fvc::interpolate(rho)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
phi = (rhoO/psi)*phid;
|
|
||||||
|
|
||||||
fvScalarMatrix pEqn
|
|
||||||
(
|
|
||||||
fvm::ddt(psi, p)
|
|
||||||
+ fvc::div(phi)
|
|
||||||
+ fvm::div(phid, p)
|
|
||||||
- fvm::laplacian(rhorAUf, p)
|
|
||||||
);
|
|
||||||
|
|
||||||
pEqn.solve();
|
|
||||||
|
|
||||||
phi += pEqn.flux();
|
|
||||||
|
|
||||||
solve(fvm::ddt(rho) + fvc::div(phi));
|
|
||||||
#include "compressibleContinuityErrs.H"
|
|
||||||
|
|
||||||
U -= rAU*fvc::grad(p);
|
|
||||||
U.correctBoundaryConditions();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
rho = rhoO + psi*p;
|
|
||||||
|
|
||||||
runTime.write();
|
|
||||||
|
|
||||||
Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s"
|
|
||||||
<< " ClockTime = " << runTime.elapsedClockTime() << " s"
|
|
||||||
<< nl << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
Info<< "End\n" << endl;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
1
bin/sonicDyMFoam
Symbolic link
1
bin/sonicDyMFoam
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
sonicFoam
|
||||||
52
bin/sonicFoam
Executable file
52
bin/sonicFoam
Executable file
@ -0,0 +1,52 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# ========= |
|
||||||
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
# \\ / O peration |
|
||||||
|
# \\ / A nd | Copyright (C) 2018 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/>.
|
||||||
|
#
|
||||||
|
# Script
|
||||||
|
# supersededByPostProcess
|
||||||
|
#
|
||||||
|
# Description
|
||||||
|
# Script to suggest using the new "postProcess" utility.
|
||||||
|
#
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
sonicFoam=${0##*/}
|
||||||
|
|
||||||
|
cat <<EOF
|
||||||
|
The $sonicFoam functionality has been merged into the transonic option of the
|
||||||
|
latest rhoPimpleFoam solver and the $sonicFoam tutorials moved into the
|
||||||
|
rhoPimpleFoam tutorials directory.
|
||||||
|
|
||||||
|
To run rhoPimpleFoam in transonic mode set the transonic option in the
|
||||||
|
PIMPLE sub-dictionary of fvSolution:
|
||||||
|
|
||||||
|
PIMPLE
|
||||||
|
{
|
||||||
|
.
|
||||||
|
.
|
||||||
|
.
|
||||||
|
transonic yes;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
1
bin/sonicLiquidFoam
Symbolic link
1
bin/sonicLiquidFoam
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
sonicFoam
|
||||||
@ -4334,81 +4334,6 @@ _solidEquilibriumDisplacementFoam_ ()
|
|||||||
}
|
}
|
||||||
complete -o filenames -o nospace -F _solidEquilibriumDisplacementFoam_ solidEquilibriumDisplacementFoam
|
complete -o filenames -o nospace -F _solidEquilibriumDisplacementFoam_ solidEquilibriumDisplacementFoam
|
||||||
|
|
||||||
_sonicDyMFoam_ ()
|
|
||||||
{
|
|
||||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
|
||||||
local prev="${COMP_WORDS[COMP_CWORD-1]}"
|
|
||||||
local line=${COMP_LINE}
|
|
||||||
local used=$(echo "$line" | grep -oE "\-[a-zA-Z]+ ")
|
|
||||||
|
|
||||||
opts="-case -doc -fileHandler -help -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -noFunctionObjects -parallel -postProcess -roots -srcDoc"
|
|
||||||
for o in $used ; do opts="${opts/$o/}" ; done
|
|
||||||
extra=""
|
|
||||||
|
|
||||||
[ "$COMP_CWORD" = 1 ] || \
|
|
||||||
case "$prev" in
|
|
||||||
-case)
|
|
||||||
opts="" ; extra="-d" ;;
|
|
||||||
-fileHandler)
|
|
||||||
opts="uncollated collated masterUncollated" ; extra="" ;;
|
|
||||||
-roots)
|
|
||||||
opts="" ; extra="" ;;
|
|
||||||
*) ;;
|
|
||||||
esac
|
|
||||||
COMPREPLY=( $(compgen -W "${opts}" $extra -- ${cur}) )
|
|
||||||
}
|
|
||||||
complete -o filenames -o nospace -F _sonicDyMFoam_ sonicDyMFoam
|
|
||||||
|
|
||||||
_sonicFoam_ ()
|
|
||||||
{
|
|
||||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
|
||||||
local prev="${COMP_WORDS[COMP_CWORD-1]}"
|
|
||||||
local line=${COMP_LINE}
|
|
||||||
local used=$(echo "$line" | grep -oE "\-[a-zA-Z]+ ")
|
|
||||||
|
|
||||||
opts="-case -doc -fileHandler -help -listFunctionObjects -listFvOptions -listRegisteredSwitches -listScalarBCs -listSwitches -listTurbulenceModels -listUnsetSwitches -listVectorBCs -noFunctionObjects -parallel -postProcess -roots -srcDoc"
|
|
||||||
for o in $used ; do opts="${opts/$o/}" ; done
|
|
||||||
extra=""
|
|
||||||
|
|
||||||
[ "$COMP_CWORD" = 1 ] || \
|
|
||||||
case "$prev" in
|
|
||||||
-case)
|
|
||||||
opts="" ; extra="-d" ;;
|
|
||||||
-fileHandler)
|
|
||||||
opts="uncollated collated masterUncollated" ; extra="" ;;
|
|
||||||
-roots)
|
|
||||||
opts="" ; extra="" ;;
|
|
||||||
*) ;;
|
|
||||||
esac
|
|
||||||
COMPREPLY=( $(compgen -W "${opts}" $extra -- ${cur}) )
|
|
||||||
}
|
|
||||||
complete -o filenames -o nospace -F _sonicFoam_ sonicFoam
|
|
||||||
|
|
||||||
_sonicLiquidFoam_ ()
|
|
||||||
{
|
|
||||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
|
||||||
local prev="${COMP_WORDS[COMP_CWORD-1]}"
|
|
||||||
local line=${COMP_LINE}
|
|
||||||
local used=$(echo "$line" | grep -oE "\-[a-zA-Z]+ ")
|
|
||||||
|
|
||||||
opts="-case -doc -fileHandler -help -listFunctionObjects -listRegisteredSwitches -listScalarBCs -listSwitches -listUnsetSwitches -listVectorBCs -noFunctionObjects -parallel -postProcess -roots -srcDoc"
|
|
||||||
for o in $used ; do opts="${opts/$o/}" ; done
|
|
||||||
extra=""
|
|
||||||
|
|
||||||
[ "$COMP_CWORD" = 1 ] || \
|
|
||||||
case "$prev" in
|
|
||||||
-case)
|
|
||||||
opts="" ; extra="-d" ;;
|
|
||||||
-fileHandler)
|
|
||||||
opts="uncollated collated masterUncollated" ; extra="" ;;
|
|
||||||
-roots)
|
|
||||||
opts="" ; extra="" ;;
|
|
||||||
*) ;;
|
|
||||||
esac
|
|
||||||
COMPREPLY=( $(compgen -W "${opts}" $extra -- ${cur}) )
|
|
||||||
}
|
|
||||||
complete -o filenames -o nospace -F _sonicLiquidFoam_ sonicLiquidFoam
|
|
||||||
|
|
||||||
_splitCells_ ()
|
_splitCells_ ()
|
||||||
{
|
{
|
||||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
local cur="${COMP_WORDS[COMP_CWORD]}"
|
||||||
|
|||||||
@ -7,5 +7,6 @@ cd ${0%/*} || exit 1 # Run from this directory
|
|||||||
runApplication blockMesh
|
runApplication blockMesh
|
||||||
runApplication setFields
|
runApplication setFields
|
||||||
runApplication $(getApplication)
|
runApplication $(getApplication)
|
||||||
|
runApplication -s sample postProcess -func sample
|
||||||
|
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
|
|||||||
@ -30,7 +30,7 @@ vertices
|
|||||||
|
|
||||||
blocks
|
blocks
|
||||||
(
|
(
|
||||||
hex (0 1 2 3 4 5 6 7) (100 1 1) simpleGrading (1 1 1)
|
hex (0 1 2 3 4 5 6 7) (1000 1 1) simpleGrading (1 1 1)
|
||||||
);
|
);
|
||||||
|
|
||||||
edges
|
edges
|
||||||
|
|||||||
@ -51,5 +51,9 @@ maxCo 0.2;
|
|||||||
|
|
||||||
maxDeltaT 1;
|
maxDeltaT 1;
|
||||||
|
|
||||||
|
functions
|
||||||
|
{
|
||||||
|
#includeFunc mag(U)
|
||||||
|
}
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -41,9 +41,9 @@ laplacianSchemes
|
|||||||
interpolationSchemes
|
interpolationSchemes
|
||||||
{
|
{
|
||||||
default linear;
|
default linear;
|
||||||
reconstruct(rho) vanLeer;
|
reconstruct(rho) vanAlbada;
|
||||||
reconstruct(U) vanLeerV;
|
reconstruct(U) vanAlbadaV;
|
||||||
reconstruct(T) vanLeer;
|
reconstruct(T) vanAlbada;
|
||||||
}
|
}
|
||||||
|
|
||||||
snGradSchemes
|
snGradSchemes
|
||||||
|
|||||||
@ -24,17 +24,16 @@ setFormat raw;
|
|||||||
|
|
||||||
sets
|
sets
|
||||||
(
|
(
|
||||||
line
|
data
|
||||||
{
|
{
|
||||||
type face;
|
type uniform;
|
||||||
axis x;
|
axis x;
|
||||||
start (-5 0 0);
|
start (-4.995 0 0);
|
||||||
end (5 0 0);
|
end (4.995 0 0);
|
||||||
nPoints 100;
|
nPoints 1000;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
fields ( p U.component(0) T rho );
|
fields (T mag(U) p);
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -15,7 +15,7 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
application sonicFoam;
|
application rhoPimpleFoam;
|
||||||
|
|
||||||
startFrom latestTime;
|
startFrom latestTime;
|
||||||
|
|
||||||
@ -48,6 +48,8 @@ PIMPLE
|
|||||||
nOuterCorrectors 1;
|
nOuterCorrectors 1;
|
||||||
nCorrectors 2;
|
nCorrectors 2;
|
||||||
nNonOrthogonalCorrectors 0;
|
nNonOrthogonalCorrectors 0;
|
||||||
|
|
||||||
|
transonic yes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
application sonicFoam;
|
application rhoPimpleFoam;
|
||||||
|
|
||||||
startFrom startTime;
|
startFrom startTime;
|
||||||
|
|
||||||
@ -48,6 +48,8 @@ PIMPLE
|
|||||||
nOuterCorrectors 2;
|
nOuterCorrectors 2;
|
||||||
nCorrectors 1;
|
nCorrectors 1;
|
||||||
nNonOrthogonalCorrectors 0;
|
nNonOrthogonalCorrectors 0;
|
||||||
|
|
||||||
|
transonic yes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -20,40 +20,30 @@ internalField uniform 300;
|
|||||||
|
|
||||||
boundaryField
|
boundaryField
|
||||||
{
|
{
|
||||||
movingWall
|
outerWall
|
||||||
{
|
{
|
||||||
type zeroGradient;
|
type fixedValue;
|
||||||
|
value $internalField;
|
||||||
}
|
}
|
||||||
|
|
||||||
farFieldMoving
|
axis
|
||||||
{
|
{
|
||||||
type zeroGradient;
|
type symmetryPlane;
|
||||||
}
|
}
|
||||||
|
|
||||||
fixedWall
|
nozzle
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
left
|
|
||||||
{
|
|
||||||
type inletOutlet;
|
|
||||||
inletValue $internalField;
|
|
||||||
}
|
|
||||||
|
|
||||||
farField
|
|
||||||
{
|
{
|
||||||
type zeroGradient;
|
type zeroGradient;
|
||||||
}
|
}
|
||||||
|
|
||||||
back
|
back
|
||||||
{
|
{
|
||||||
type wedge;
|
type empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
front
|
front
|
||||||
{
|
{
|
||||||
type wedge;
|
type empty;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -15,13 +15,26 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
thermoType0
|
||||||
|
{
|
||||||
|
type heRhoThermo;
|
||||||
|
mixture pureMixture;
|
||||||
|
properties liquid;
|
||||||
|
energy sensibleInternalEnergy;
|
||||||
|
}
|
||||||
|
|
||||||
|
mixture0
|
||||||
|
{
|
||||||
|
H2O;
|
||||||
|
}
|
||||||
|
|
||||||
thermoType
|
thermoType
|
||||||
{
|
{
|
||||||
type hePsiThermo;
|
type heRhoThermo;
|
||||||
mixture pureMixture;
|
mixture pureMixture;
|
||||||
transport const;
|
transport const;
|
||||||
thermo hConst;
|
thermo hConst;
|
||||||
equationOfState perfectGas;
|
equationOfState perfectFluid;
|
||||||
specie specie;
|
specie specie;
|
||||||
energy sensibleInternalEnergy;
|
energy sensibleInternalEnergy;
|
||||||
}
|
}
|
||||||
@ -30,19 +43,23 @@ mixture
|
|||||||
{
|
{
|
||||||
specie
|
specie
|
||||||
{
|
{
|
||||||
molWeight 28.9;
|
molWeight 18;
|
||||||
|
}
|
||||||
|
equationOfState
|
||||||
|
{
|
||||||
|
R 7342;
|
||||||
|
rho0 1000;
|
||||||
}
|
}
|
||||||
thermodynamics
|
thermodynamics
|
||||||
{
|
{
|
||||||
Cp 1007;
|
Cp 4185;
|
||||||
Hf 2.544e+06;
|
Hf 0;
|
||||||
}
|
}
|
||||||
transport
|
transport
|
||||||
{
|
{
|
||||||
mu 1e-3;
|
mu 0.001;
|
||||||
Pr 0.7;
|
Pr 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -17,5 +17,4 @@ FoamFile
|
|||||||
|
|
||||||
simulationType laminar;
|
simulationType laminar;
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -15,7 +15,7 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
application sonicLiquidFoam;
|
application rhoPimpleFoam;
|
||||||
|
|
||||||
startFrom startTime;
|
startFrom startTime;
|
||||||
|
|
||||||
@ -28,8 +28,14 @@ gradSchemes
|
|||||||
divSchemes
|
divSchemes
|
||||||
{
|
{
|
||||||
default none;
|
default none;
|
||||||
|
|
||||||
div(phi,U) Gauss limitedLinearV 1;
|
div(phi,U) Gauss limitedLinearV 1;
|
||||||
div(phid,p) Gauss limitedLinear 1;
|
div(phid,p) Gauss limitedLinear 1;
|
||||||
|
div(phi,e) Gauss limitedLinear 1;
|
||||||
|
div(phi,K) Gauss limitedLinear 1;
|
||||||
|
div(phiv,p) Gauss limitedLinear 1;
|
||||||
|
|
||||||
|
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
|
||||||
}
|
}
|
||||||
|
|
||||||
laplacianSchemes
|
laplacianSchemes
|
||||||
@ -46,6 +46,8 @@ PIMPLE
|
|||||||
nOuterCorrectors 2;
|
nOuterCorrectors 2;
|
||||||
nCorrectors 1;
|
nCorrectors 1;
|
||||||
nNonOrthogonalCorrectors 0;
|
nNonOrthogonalCorrectors 0;
|
||||||
|
|
||||||
|
transonic yes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
application sonicFoam;
|
application rhoPimpleFoam;
|
||||||
|
|
||||||
startFrom startTime;
|
startFrom startTime;
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ solvers
|
|||||||
relTol 0;
|
relTol 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
"U.*"
|
"(U|e).*"
|
||||||
{
|
{
|
||||||
$p;
|
$p;
|
||||||
tolerance 1e-05;
|
tolerance 1e-05;
|
||||||
@ -46,6 +46,8 @@ PIMPLE
|
|||||||
nOuterCorrectors 2;
|
nOuterCorrectors 2;
|
||||||
nCorrectors 1;
|
nCorrectors 1;
|
||||||
nNonOrthogonalCorrectors 0;
|
nNonOrthogonalCorrectors 0;
|
||||||
|
|
||||||
|
transonic yes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
application sonicFoam;
|
application rhoPimpleFoam;
|
||||||
|
|
||||||
startFrom startTime;
|
startFrom startTime;
|
||||||
|
|
||||||
@ -39,6 +39,8 @@ PIMPLE
|
|||||||
nOuterCorrectors 2;
|
nOuterCorrectors 2;
|
||||||
nCorrectors 1;
|
nCorrectors 1;
|
||||||
nNonOrthogonalCorrectors 0;
|
nNonOrthogonalCorrectors 0;
|
||||||
|
|
||||||
|
transonic yes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1,61 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volVectorField;
|
|
||||||
object U;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [0 1 -1 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform (0 0 0);
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
movingWall
|
|
||||||
{
|
|
||||||
type movingWallVelocity;
|
|
||||||
value $internalField;
|
|
||||||
}
|
|
||||||
|
|
||||||
farFieldMoving
|
|
||||||
{
|
|
||||||
type noSlip;
|
|
||||||
}
|
|
||||||
|
|
||||||
fixedWall
|
|
||||||
{
|
|
||||||
type noSlip;
|
|
||||||
}
|
|
||||||
|
|
||||||
left
|
|
||||||
{
|
|
||||||
type pressureInletOutletVelocity;
|
|
||||||
value $internalField;
|
|
||||||
}
|
|
||||||
|
|
||||||
farField
|
|
||||||
{
|
|
||||||
type noSlip;
|
|
||||||
}
|
|
||||||
|
|
||||||
back
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
}
|
|
||||||
|
|
||||||
front
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,60 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class volScalarField;
|
|
||||||
object p;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [1 -1 -2 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform 1e5;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
movingWall
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
farFieldMoving
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
fixedWall
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
left
|
|
||||||
{
|
|
||||||
type totalPressure;
|
|
||||||
p0 $internalField;
|
|
||||||
}
|
|
||||||
|
|
||||||
farField
|
|
||||||
{
|
|
||||||
type zeroGradient;
|
|
||||||
}
|
|
||||||
|
|
||||||
back
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
}
|
|
||||||
|
|
||||||
front
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,56 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class pointScalarField;
|
|
||||||
object pointMotionU;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dimensions [0 1 -1 0 0 0 0];
|
|
||||||
|
|
||||||
internalField uniform 0;
|
|
||||||
|
|
||||||
boundaryField
|
|
||||||
{
|
|
||||||
movingWall
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue constant 160;
|
|
||||||
}
|
|
||||||
farFieldMoving
|
|
||||||
{
|
|
||||||
type slip;
|
|
||||||
}
|
|
||||||
fixedWall
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue constant 0;
|
|
||||||
}
|
|
||||||
left
|
|
||||||
{
|
|
||||||
type uniformFixedValue;
|
|
||||||
uniformValue constant 0;
|
|
||||||
}
|
|
||||||
farField
|
|
||||||
{
|
|
||||||
type slip;
|
|
||||||
}
|
|
||||||
back
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
}
|
|
||||||
front
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "constant";
|
|
||||||
object dynamicMeshDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
dynamicFvMesh dynamicMotionSolverFvMesh;
|
|
||||||
|
|
||||||
motionSolverLibs ("libfvMotionSolvers.so");
|
|
||||||
|
|
||||||
motionSolver velocityComponentLaplacian;
|
|
||||||
|
|
||||||
component x;
|
|
||||||
diffusivity directional (1 200 0);
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,142 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
object blockMeshDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
convertToMeters 0.001;
|
|
||||||
|
|
||||||
vertices
|
|
||||||
(
|
|
||||||
(-7.5 0 0)
|
|
||||||
(-7 0 0)
|
|
||||||
(-3.5 0 0)
|
|
||||||
(0 0 0)
|
|
||||||
(-7.5 0.75 -0.032745707)
|
|
||||||
(-7 0.75 -0.032745707)
|
|
||||||
(-3.5 2 -0.087321886)
|
|
||||||
(0 2 -0.087321886)
|
|
||||||
(-7.5 2.5 -0.10915236)
|
|
||||||
(-7 2.5 -0.10915236)
|
|
||||||
(-3.5 2.5 -0.10915236)
|
|
||||||
(0 2.5 -0.10915236)
|
|
||||||
(-7.5 0.75 0.032745707)
|
|
||||||
(-7 0.75 0.032745707)
|
|
||||||
(-3.5 2 0.087321886)
|
|
||||||
(0 2 0.087321886)
|
|
||||||
(-7.5 2.5 0.10915236)
|
|
||||||
(-7 2.5 0.10915236)
|
|
||||||
(-3.5 2.5 0.10915236)
|
|
||||||
(0 2.5 0.10915236)
|
|
||||||
);
|
|
||||||
|
|
||||||
blocks
|
|
||||||
(
|
|
||||||
hex (0 1 5 4 0 1 13 12) (15 15 1) simpleGrading (1 1 1)
|
|
||||||
hex (2 3 7 6 2 3 15 14) (20 20 1) simpleGrading (2 0.25 1)
|
|
||||||
hex (4 5 9 8 12 13 17 16) (15 15 1) simpleGrading (1 1 1)
|
|
||||||
hex (5 6 10 9 13 14 18 17) (50 15 1) simpleGrading (1 1 1)
|
|
||||||
hex (6 7 11 10 14 15 19 18) (20 15 1) simpleGrading (2 1 1)
|
|
||||||
);
|
|
||||||
|
|
||||||
edges
|
|
||||||
(
|
|
||||||
);
|
|
||||||
|
|
||||||
boundary
|
|
||||||
(
|
|
||||||
movingWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(1 5 13 1)
|
|
||||||
(5 6 14 13)
|
|
||||||
(2 2 14 6)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
farFieldMoving
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(9 17 18 10)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
fixedWall
|
|
||||||
{
|
|
||||||
type wall;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(3 7 15 3)
|
|
||||||
(7 11 19 15)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
axis
|
|
||||||
{
|
|
||||||
type empty;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(0 1 1 0)
|
|
||||||
(2 3 3 2)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
left
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(0 0 12 4)
|
|
||||||
(4 12 16 8)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
farField
|
|
||||||
{
|
|
||||||
type patch;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(8 16 17 9)
|
|
||||||
(10 18 19 11)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
back
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(0 4 5 1)
|
|
||||||
(2 6 7 3)
|
|
||||||
(4 8 9 5)
|
|
||||||
(5 9 10 6)
|
|
||||||
(6 10 11 7)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
front
|
|
||||||
{
|
|
||||||
type wedge;
|
|
||||||
faces
|
|
||||||
(
|
|
||||||
(0 1 13 12)
|
|
||||||
(2 3 15 14)
|
|
||||||
(12 13 17 16)
|
|
||||||
(13 14 18 17)
|
|
||||||
(14 15 19 18)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
mergePatchPairs
|
|
||||||
(
|
|
||||||
);
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,52 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "system";
|
|
||||||
object controlDict;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
application sonicDyMFoam;
|
|
||||||
|
|
||||||
startFrom startTime;
|
|
||||||
|
|
||||||
startTime 0;
|
|
||||||
|
|
||||||
stopAt endTime;
|
|
||||||
|
|
||||||
endTime 0.00002;
|
|
||||||
|
|
||||||
deltaT 1e-08;
|
|
||||||
|
|
||||||
writeControl adjustableRunTime;
|
|
||||||
|
|
||||||
writeInterval 5e-7;
|
|
||||||
|
|
||||||
purgeWrite 0;
|
|
||||||
|
|
||||||
writeFormat binary;
|
|
||||||
|
|
||||||
writePrecision 6;
|
|
||||||
|
|
||||||
writeCompression off;
|
|
||||||
|
|
||||||
timeFormat general;
|
|
||||||
|
|
||||||
timePrecision 6;
|
|
||||||
|
|
||||||
runTimeModifiable true;
|
|
||||||
|
|
||||||
adjustTimeStep yes;
|
|
||||||
|
|
||||||
maxCo 0.2;
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
cuttingPlane
|
|
||||||
{
|
|
||||||
type surfaces;
|
|
||||||
libs ("libsampling.so");
|
|
||||||
|
|
||||||
writeControl writeTime;
|
|
||||||
|
|
||||||
surfaceFormat vtk;
|
|
||||||
fields ( p U );
|
|
||||||
|
|
||||||
interpolationScheme cellPoint;
|
|
||||||
|
|
||||||
surfaces
|
|
||||||
(
|
|
||||||
zNormal
|
|
||||||
{
|
|
||||||
type cuttingPlane;
|
|
||||||
planeType pointAndNormal;
|
|
||||||
pointAndNormalDict
|
|
||||||
{
|
|
||||||
point (0 0 0);
|
|
||||||
normal (0 0 1);
|
|
||||||
}
|
|
||||||
interpolate true;
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
|
||||||
| ========= | |
|
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
|
||||||
| \\ / O peration | Version: dev |
|
|
||||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
|
||||||
| \\/ M anipulation | |
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
FoamFile
|
|
||||||
{
|
|
||||||
version 2.0;
|
|
||||||
format ascii;
|
|
||||||
class dictionary;
|
|
||||||
location "system";
|
|
||||||
object fvSchemes;
|
|
||||||
}
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
ddtSchemes
|
|
||||||
{
|
|
||||||
default Euler;
|
|
||||||
}
|
|
||||||
|
|
||||||
gradSchemes
|
|
||||||
{
|
|
||||||
default Gauss linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
divSchemes
|
|
||||||
{
|
|
||||||
default none;
|
|
||||||
|
|
||||||
div(phi,U) Gauss vanLeerV;
|
|
||||||
div(phid,p) Gauss vanLeer;
|
|
||||||
div(phi,K) Gauss vanLeer;
|
|
||||||
div(phi,e) Gauss vanLeer;
|
|
||||||
|
|
||||||
div(phiv,p) Gauss linear;
|
|
||||||
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
laplacianSchemes
|
|
||||||
{
|
|
||||||
default Gauss linear corrected;
|
|
||||||
|
|
||||||
laplacian(diffusivity,cellMotionU) Gauss linear uncorrected;
|
|
||||||
}
|
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
default linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
snGradSchemes
|
|
||||||
{
|
|
||||||
default corrected;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user