| name | openfoam-11-case-directory-structure |
| description | Sub-skill of openfoam: 1.1 Case Directory Structure (+3). |
| version | 1.0.0 |
| category | engineering |
| type | reference |
| scripts_exempt | true |
1.1 Case Directory Structure (+3)
1.1 Case Directory Structure
Every OpenFOAM case requires this minimum structure:
<case>/
0/ # Initial/boundary conditions
U # Velocity (volVectorField)
p # Pressure (volScalarField)
k # Turbulent kinetic energy (if RAS/LES)
epsilon | omega # Dissipation (model-dependent)
nut # Turbulent viscosity
constant/
transportProperties # Fluid properties (nu, rho)
turbulenceProperties # Turbulence model selection
polyMesh/ # Mesh (generated by blockMesh/snappyHexMesh)
system/
controlDict # Run control (REQUIRED)
fvSchemes # Discretisation schemes (REQUIRED)
fvSolution # Solver settings (REQUIRED)
blockMeshDict # Structured mesh definition
decomposeParDict # Parallel decomposition
1.2 FoamFile Header
Every OpenFOAM file must begin with this header. The class and object fields must match the file type and filename.
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object controlDict;
}
| File | class | object |
|---|
| controlDict, fvSchemes, fvSolution | dictionary | filename |
| transportProperties, turbulenceProperties | dictionary | filename |
| blockMeshDict, decomposeParDict | dictionary | filename |
| U (velocity) | volVectorField | U |
| p, k, epsilon, omega, nut | volScalarField | fieldname |
1.3 controlDict
Steady-state (simpleFoam):
application simpleFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 2000;
deltaT 1;
writeControl timeStep;
writeInterval 100;
purgeWrite 0;
writeFormat ascii;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
functions
{
#includeFunc yPlus
#includeFunc solverInfo
}
Transient with adaptive timestep (pimpleFoam):
application pimpleFoam;
startFrom latestTime;
startTime 0;
stopAt endTime;
endTime 10;
deltaT 0.001;
writeControl adjustable;
writeInterval 0.1;
adjustTimeStep yes;
maxCo 5;
runTimeModifiable yes;
Multiphase (interFoam):
application interFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 1;
deltaT 0.001;
writeControl adjustable;
writeInterval 0.05;
adjustTimeStep yes;
maxCo 1;
maxAlphaCo 1;
maxDeltaT 1;
runTimeModifiable yes;
1.4 fvSchemes
Steady-state RANS (simpleFoam):
ddtSchemes { default steadyState; }
gradSchemes { default Gauss linear; }
divSchemes
{
default none;
div(phi,U) bounded Gauss linearUpwind grad(U);
turbulence bounded Gauss limitedLinear 1;
div(phi,k) $turbulence;
div(phi,epsilon) $turbulence;
div(phi,omega) $turbulence;
div((nuEff*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes { default Gauss linear corrected; }
interpolationSchemes { default linear; }
snGradSchemes { default corrected; }
wallDist { method meshWave; }
Transient laminar (icoFoam):
ddtSchemes { default Euler; }
gradSchemes { default Gauss linear; }
divSchemes { default none; div(phi,U) Gauss linear; }
laplacianSchemes { default Gauss linear orthogonal; }
interpolationSchemes { default linear; }
snGradSchemes { default orthogonal; }