100% found this document useful (1 vote)
49 views

2-D Lid-Driven Cavity: (302.044) Numerical Methods in Fluid Dynamics

The document discusses using the OpenFOAM icoFoam solver to simulate a 2D lid-driven cavity problem. It describes setting up the incompressible Navier-Stokes equations in icoFoam, generating an initial evenly distributed orthogonal mesh with 20x20 cells, and validating the code through mesh refinement and comparing to experimental data if available.

Uploaded by

Xingxing Huang
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
49 views

2-D Lid-Driven Cavity: (302.044) Numerical Methods in Fluid Dynamics

The document discusses using the OpenFOAM icoFoam solver to simulate a 2D lid-driven cavity problem. It describes setting up the incompressible Navier-Stokes equations in icoFoam, generating an initial evenly distributed orthogonal mesh with 20x20 cells, and validating the code through mesh refinement and comparing to experimental data if available.

Uploaded by

Xingxing Huang
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

[302.

044] Numerical Methods


in Fluid Dynamics

2–D Lid-Driven Cavity


Incompressible Navier–Stokes (icoFoam),
PISO Algorithm and Mesh Remapping

Univ. Assist. MSc. Francesco Romanò

[email protected]

December 18th, 2014


Outline

Incompressible
Navier–
Stokes 1 Incompressible Navier–Stokes
Lid–Driven
Cavity

icoFoam
Meshing
2 Lid–Driven Cavity
Solver set-up
Mesh
Refinement
Solver Re-
initialization 3 icoFoam
PISO
Algorithm Meshing
Solver set-up
Mesh Refinement
Solver Re-initialization
PISO Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 2/13


Incompressible Navier–Stokes Equations

Incompressible
Navier–
Incompressible Navier–Stokes Equations
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 3/13


Incompressible Navier–Stokes Equations

Incompressible
Navier–
Incompressible Navier–Stokes Equations
Stokes

Lid–Driven
Cavity ∇ · u = 0

icoFoam
u,t +u · ∇u = −∇p + ν∆u

Meshing
+BC & IC

Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 3/13


Incompressible Navier–Stokes Equations

Incompressible
Navier–
Incompressible Navier–Stokes Equations
Stokes

Lid–Driven
Cavity ∇ · u = 0

icoFoam
u,t +u · ∇u = −∇p + ν∆u

Meshing
+BC & IC

Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO u = velocity field;
Algorithm
p = relative pressure field divided by ρ;
ν = kinematic viscosity.

[302.044] – Univ. Assist. MSc. Francesco Romanò 3/13


Lid–Driven Cavity
Mathematical Problem

Incompressible
Navier–
Lid–Driven Cavity Problem
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 4/13


Lid–Driven Cavity
Mathematical Problem

Incompressible
Navier–
Lid–Driven Cavity Problem
Stokes

Lid–Driven
Cavity ∇ · u = 0

u,t +u· ∇u = −∇p + ν∆



icoFoam 
→ u = 0;

Meshing 

  left edge: No–Slip
Solver set-up 

Mesh
Refinement
right edge: No–Slip → u = 0;
Solver Re-
 BC :
bottom edge: No–Slip → u = 0;

initialization

 
PISO

 
top edge: No–Slip → u = U î;
Algorithm 
 



IC : u = 0 , (p = 0);

u = velocity field;
p = relative pressure field divided by ρ;
ν = kinematic viscosity.

[302.044] – Univ. Assist. MSc. Francesco Romanò 4/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 5/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver
Stokes
. icoFoam assumes an incompressible, unsteady flow and
Lid–Driven
Cavity ignores gravity, but it can be also set as a steady solver;
icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 5/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver
Stokes
. icoFoam assumes an incompressible, unsteady flow and
Lid–Driven
Cavity ignores gravity, but it can be also set as a steady solver;
icoFoam
Meshing
. Because, in general, an exact solution of the analyzed
Solver set-up problems is not known, it is not possible to analytically
Mesh
Refinement validate the code. That is the case in which experimental
Solver Re-
initialization
PISO
data can be used as benchmark;
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 5/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver
Stokes
. icoFoam assumes an incompressible, unsteady flow and
Lid–Driven
Cavity ignores gravity, but it can be also set as a steady solver;
icoFoam
Meshing
. Because, in general, an exact solution of the analyzed
Solver set-up problems is not known, it is not possible to analytically
Mesh
Refinement validate the code. That is the case in which experimental
Solver Re-
initialization
PISO
data can be used as benchmark;
Algorithm
. Another way to “validate” the code is to increase the cells
size showing a consistent decrement of the approximation
error. If the Lax’ theorem is applicable, the discrete solution
converges to the exact one decreasing the characteristic
size of each element.

[302.044] – Univ. Assist. MSc. Francesco Romanò 5/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
. For a coarse grid set-up, the number of cells will be
PISO
Algorithm
Nx = 20 , Ny = 20 (and Nz = 1);

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
. For a coarse grid set-up, the number of cells will be
PISO
Algorithm
Nx = 20 , Ny = 20 (and Nz = 1);
. Algorithm steps:

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
. For a coarse grid set-up, the number of cells will be
PISO
Algorithm
Nx = 20 , Ny = 20 (and Nz = 1);
. Algorithm steps:
◦ create the geometry writing the blockMeshDict file and
locating it in <problem_folder>/constant/polyMesh/;

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
. For a coarse grid set-up, the number of cells will be
PISO
Algorithm
Nx = 20 , Ny = 20 (and Nz = 1);
. Algorithm steps:
◦ create the geometry writing the blockMeshDict file and
locating it in <problem_folder>/constant/polyMesh/;
◦ run the command <problem_folder>$ blockMesh;

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
. For a coarse grid set-up, the number of cells will be
PISO
Algorithm
Nx = 20 , Ny = 20 (and Nz = 1);
. Algorithm steps:
◦ create the geometry writing the blockMeshDict file and
locating it in <problem_folder>/constant/polyMesh/;
◦ run the command <problem_folder>$ blockMesh;
◦ check the mesh with <problem_folder>$ checkMesh;

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Meshing
Stokes
. At first, an evenly distributed, orthogonal mesh is used;
Lid–Driven
Cavity
. Because the problem to solve is a 2–D case, in
icoFoam
Meshing
blockMeshDict an arbitrary thickness is given in z direction
Solver set-up and empty is used for the faces having as normal vector k̂;
Mesh
Refinement
Solver Re-
initialization
. For a coarse grid set-up, the number of cells will be
PISO
Algorithm
Nx = 20 , Ny = 20 (and Nz = 1);
. Algorithm steps:
◦ create the geometry writing the blockMeshDict file and
locating it in <problem_folder>/constant/polyMesh/;
◦ run the command <problem_folder>$ blockMesh;
◦ check the mesh with <problem_folder>$ checkMesh;
◦ visualize it with <problem_folder>$ paraFoam and the
Wireframe visualization option.

[302.044] – Univ. Assist. MSc. Francesco Romanò 6/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 7/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. For an incompressible, viscous flow, considering a laminar
Lid–Driven
Cavity regime, the only fluid property to specify is the kinematic
icoFoam viscosity (in transportProperties);
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 7/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. For an incompressible, viscous flow, considering a laminar
Lid–Driven
Cavity regime, the only fluid property to specify is the kinematic
icoFoam viscosity (in transportProperties);
Meshing
Solver set-up . In writing the controlDict file, the setted ∆t should take
Mesh
Refinement into account numerical stability limits;
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 7/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. For an incompressible, viscous flow, considering a laminar
Lid–Driven
Cavity regime, the only fluid property to specify is the kinematic
icoFoam viscosity (in transportProperties);
Meshing
Solver set-up . In writing the controlDict file, the setted ∆t should take
Mesh
Refinement into account numerical stability limits;
Solver Re-
initialization
PISO
Algorithm
. Because the employed grid is Orthogonal, the flag
nNonOrthogonalCorrectors in fvSolution is set to 0;

[302.044] – Univ. Assist. MSc. Francesco Romanò 7/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. For an incompressible, viscous flow, considering a laminar
Lid–Driven
Cavity regime, the only fluid property to specify is the kinematic
icoFoam viscosity (in transportProperties);
Meshing
Solver set-up . In writing the controlDict file, the setted ∆t should take
Mesh
Refinement into account numerical stability limits;
Solver Re-
initialization
PISO
Algorithm
. Because the employed grid is Orthogonal, the flag
nNonOrthogonalCorrectors in fvSolution is set to 0;
. Starting from resting, homogeneous flow, homogeneous
initial conditions are stored for p and U in the folder
<problem_folder>/0/.

[302.044] – Univ. Assist. MSc. Francesco Romanò 7/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity ◦ set the fluid properties in transportProperties
icoFoam file and locating it in <problem_folder>/constant/;
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity ◦ set the fluid properties in transportProperties
icoFoam file and locating it in <problem_folder>/constant/;
Meshing
Solver set-up ◦ set the initial conditions writing the p and U files and
Mesh
Refinement locating them in <problem_folder>/0/;
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity ◦ set the fluid properties in transportProperties
icoFoam file and locating it in <problem_folder>/constant/;
Meshing
Solver set-up ◦ set the initial conditions writing the p and U files and
Mesh
Refinement locating them in <problem_folder>/0/;
Solver Re-
initialization ◦ set time step and data saving/storing options writing
PISO
Algorithm the controlDict file and locating it in
<problem_folder>/system/;

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity ◦ set the fluid properties in transportProperties
icoFoam file and locating it in <problem_folder>/constant/;
Meshing
Solver set-up ◦ set the initial conditions writing the p and U files and
Mesh
Refinement locating them in <problem_folder>/0/;
Solver Re-
initialization ◦ set time step and data saving/storing options writing
PISO
Algorithm the controlDict file and locating it in
<problem_folder>/system/;
◦ set discretization and splitting scheme details writing
the fvSchemes and fvSolution files and locating them
in <problem_folder>/system/;

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity ◦ set the fluid properties in transportProperties
icoFoam file and locating it in <problem_folder>/constant/;
Meshing
Solver set-up ◦ set the initial conditions writing the p and U files and
Mesh
Refinement locating them in <problem_folder>/0/;
Solver Re-
initialization ◦ set time step and data saving/storing options writing
PISO
Algorithm the controlDict file and locating it in
<problem_folder>/system/;
◦ set discretization and splitting scheme details writing
the fvSchemes and fvSolution files and locating them
in <problem_folder>/system/;
◦ run the icoFoam solver with the command
<problem_folder>$ icoFoam;

[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity ◦ set the fluid properties in transportProperties
icoFoam file and locating it in <problem_folder>/constant/;
Meshing
Solver set-up ◦ set the initial conditions writing the p and U files and
Mesh
Refinement locating them in <problem_folder>/0/;
Solver Re-
initialization ◦ set time step and data saving/storing options writing
PISO
Algorithm the controlDict file and locating it in
<problem_folder>/system/;
◦ set discretization and splitting scheme details writing
the fvSchemes and fvSolution files and locating them
in <problem_folder>/system/;
◦ run the icoFoam solver with the command
<problem_folder>$ icoFoam;
◦ visualize the results with the command
<problem_folder>$ paraFoam.
[302.044] – Univ. Assist. MSc. Francesco Romanò 8/13
Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Case folder structure:
Lid–Driven
Cavity
→ <problem_folder>/
icoFoam
Meshing
→ 0/
Solver set-up U
Mesh
Refinement p
Solver Re-
initialization → constant/
PISO
Algorithm transportProperties
→ polyMesh/
blockMeshDict
→ system/
controlDict
fvSchemes
fvSolution

[302.044] – Univ. Assist. MSc. Francesco Romanò 9/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: Mesh Refinement
Stokes
. As second try, because of the solution characteristics, a
Lid–Driven
Cavity
better result can be obtained refining the mesh in the
icoFoam
four corners of the cavity;
Meshing
Solver set-up
. To proceed, the blockMeshDict file will consist of four
Mesh
Refinement blocks whose simple grading will be used to cluster the
Solver Re-
initialization nodes nearby the domain corners:
PISO
Algorithm blocks
(
hex (<1st block vertices>) (<Nx Ny Nx>) simpleGrading (2.0 2.0 1.0)
hex (<2nd block vertices>) (<Nx Ny Nx>) simpleGrading (0.5 2.0 1.0)
hex (<3rd block vertices>) (<Nx Ny Nx>) simpleGrading (2.0 0.5 1.0)
hex (<4th block vertices>) (<Nx Ny Nx>) simpleGrading (0.5 0.5 1.0)
);

[302.044] – Univ. Assist. MSc. Francesco Romanò 10/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver re-initialization
Stokes
. The set-up used for the solver in the case of a uniform mesh
Lid–Driven
Cavity can be kept unchanged;
icoFoam
Meshing
. The only necessary changing is in writing the controlDict
Solver set-up file. The selected ∆t should take into account numerical
Mesh
Refinement stability limits relative to the new mesh;
Solver Re-
initialization
PISO
Algorithm
. As initial condition, the solution of the previous simulation
can be used mapping it on the current grid:

mapFields <folder to map from> -consistent

. As initial time, the final one of the prevoius solution is set.

[302.044] – Univ. Assist. MSc. Francesco Romanò 11/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity
◦ copy the previous results in an old problem folder:
icoFoam
Meshing
<problem_folder_Old>;
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity
◦ copy the previous results in an old problem folder:
icoFoam
Meshing
<problem_folder_Old>;
Solver set-up ◦ set the new blockMeshDict and controlDict;
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity
◦ copy the previous results in an old problem folder:
icoFoam
Meshing
<problem_folder_Old>;
Solver set-up ◦ set the new blockMeshDict and controlDict;
Mesh
Refinement ◦ create the new mesh with the command
Solver Re-
initialization <problem_folder>/blockMesh;
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity
◦ copy the previous results in an old problem folder:
icoFoam
Meshing
<problem_folder_Old>;
Solver set-up ◦ set the new blockMeshDict and controlDict;
Mesh
Refinement ◦ create the new mesh with the command
Solver Re-
initialization <problem_folder>/blockMesh;
PISO
Algorithm ◦ map the results on the new grid with the command
<problem_folder>/mapFields
..<problem_folder_Old> -consistent;

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity
◦ copy the previous results in an old problem folder:
icoFoam
Meshing
<problem_folder_Old>;
Solver set-up ◦ set the new blockMeshDict and controlDict;
Mesh
Refinement ◦ create the new mesh with the command
Solver Re-
initialization <problem_folder>/blockMesh;
PISO
Algorithm ◦ map the results on the new grid with the command
<problem_folder>/mapFields
..<problem_folder_Old> -consistent;
◦ run the icoFoam solver with the command
<problem_folder>$ icoFoam;

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: solver set-up
Stokes
. Algorithm steps:
Lid–Driven
Cavity
◦ copy the previous results in an old problem folder:
icoFoam
Meshing
<problem_folder_Old>;
Solver set-up ◦ set the new blockMeshDict and controlDict;
Mesh
Refinement ◦ create the new mesh with the command
Solver Re-
initialization <problem_folder>/blockMesh;
PISO
Algorithm ◦ map the results on the new grid with the command
<problem_folder>/mapFields
..<problem_folder_Old> -consistent;
◦ run the icoFoam solver with the command
<problem_folder>$ icoFoam;
◦ visualize the results with the command
<problem_folder>$ paraFoam.

[302.044] – Univ. Assist. MSc. Francesco Romanò 12/13


Lid–Driven Cavity
OpenFOAM icoFoam solver

Incompressible
Navier–
OpenFOAM icoFoam solver: PISO algorithm
Stokes

Lid–Driven
Cavity

icoFoam
Meshing
Solver set-up
Mesh
Refinement
Solver Re-
initialization
PISO
Algorithm

[302.044] – Univ. Assist. MSc. Francesco Romanò 13/13

You might also like