executed with foamRun for single region simulations of foamMultiRun for
multi-region simulations. Replaces pimpleFoam, pisoFoam and simpleFoam and all
the corresponding tutorials have been updated and moved to
tutorials/modules/incompressibleFluid.
Class
Foam::solvers::incompressibleFluid
Description
Solver module for steady or transient turbulent flow of incompressible
isothermal fluids with optional mesh motion and change.
Uses the flexible PIMPLE (PISO-SIMPLE) solution for time-resolved and
pseudo-transient and steady simulations.
Optional fvModels and fvConstraints are provided to enhance the simulation
in many ways including adding various sources, constraining or limiting
the solution.
Reference:
\verbatim
Greenshields, C. J., & Weller, H. G. (2022).
Notes on Computational Fluid Dynamics: General Principles.
CFD Direct Ltd.: Reading, UK.
\endverbatim
SourceFiles
incompressibleFluid.C
See also
Foam::solvers::fluidSolver
Foam::solvers::isothermalFluid
91 lines
1.9 KiB
C++
91 lines
1.9 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
format ascii;
|
|
class dictionary;
|
|
location "system";
|
|
object controlDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
application foamRun;
|
|
|
|
solver incompressibleFluid;
|
|
|
|
startFrom startTime;
|
|
|
|
startTime 0;
|
|
|
|
stopAt endTime;
|
|
|
|
endTime 1.5;
|
|
|
|
deltaT 0.001;
|
|
|
|
writeControl adjustableRunTime;
|
|
|
|
writeInterval 0.1;
|
|
|
|
purgeWrite 0;
|
|
|
|
writeFormat ascii;
|
|
|
|
writePrecision 6;
|
|
|
|
writeCompression off;
|
|
|
|
timeFormat general;
|
|
|
|
timePrecision 6;
|
|
|
|
runTimeModifiable true;
|
|
|
|
adjustTimeStep yes;
|
|
|
|
maxCo 5;
|
|
|
|
functions
|
|
{
|
|
probes
|
|
{
|
|
// Where to load it from
|
|
libs ("libsampling.so");
|
|
|
|
type probes;
|
|
|
|
// Name of the directory for probe data
|
|
name probes;
|
|
|
|
// Write at same frequency as fields
|
|
writeControl writeTime;
|
|
writeInterval 1;
|
|
|
|
// Fields to be probed
|
|
fields
|
|
(
|
|
p U
|
|
);
|
|
|
|
probeLocations
|
|
(
|
|
( 1e-06 0 0.01 ) // at inlet
|
|
(0.21 -0.20999 0.01) // at outlet1
|
|
(0.21 0.20999 0.01) // at outlet2
|
|
(0.21 0 0.01) // at central block
|
|
);
|
|
}
|
|
|
|
#includeFunc patchFlowRate(patch=outlet1)
|
|
#includeFunc faceZoneFlowRate(name=fz1)
|
|
#includeFunc patchFlowRate(patch=outlet2)
|
|
#includeFunc faceZoneFlowRate(name=fz2)
|
|
}
|
|
|
|
// ************************************************************************* //
|