Upload
vokhanh
View
218
Download
1
Embed Size (px)
Citation preview
[302.044] Numerical Methodsin Fluid Dynamics
2�D Flow Past an Airfoil
Incompressible Navier�Stokes (pimpleFoam),
snappyHexMesh and Parallel MPI calculations
Univ. Assist. MSc. Francesco Romanò
January 8th, 2015
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
Outline
1 Incompressible Navier�Stokes
2 Flow Past an Airfoil
3 pimpleFoam
Turbulence Model
Case Set-up
Meshing
Solver Set-up
Parallel MPI
[302.044] � Univ. Assist. MSc. Francesco Romanò 2/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Incompressible Navier�StokesEquations
Incompressible Navier�Stokes Equations
∇ · u = 0
u,t+∇ · (uu) +∇ · (νeff∇u) = −∇p+BC & IC
+Turbulence parameters
u = velocity �eld;p = relative pressure �eld divided by ρ;νeff = e�ective kinematic viscosity.
[302.044] � Univ. Assist. MSc. Francesco Romanò 3/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Incompressible Navier�StokesEquations
Incompressible Navier�Stokes Equations∇ · u = 0
u,t+∇ · (uu) +∇ · (νeff∇u) = −∇p+BC & IC
+Turbulence parameters
u = velocity �eld;p = relative pressure �eld divided by ρ;νeff = e�ective kinematic viscosity.
[302.044] � Univ. Assist. MSc. Francesco Romanò 3/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Incompressible Navier�StokesEquations
Incompressible Navier�Stokes Equations∇ · u = 0
u,t+∇ · (uu) +∇ · (νeff∇u) = −∇p+BC & IC
+Turbulence parameters
u = velocity �eld;p = relative pressure �eld divided by ρ;νeff = e�ective kinematic viscosity.
[302.044] � Univ. Assist. MSc. Francesco Romanò 3/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilMathematical Problem
Flow Past an Airfoil Problem
∇ · u = 0
u,t+∇ · (uu) +∇ · (νeff∇u) = −∇p
BC :
left edge: Free Stream → u = 2 m/s es;
external edges: Far Field → p = 0;
airfoil edges: No�Slip → u = 0;
IC : u = 0 , (p = 0);
Turbulence parameters
u = velocity �eld;p = relative pressure �eld divided by ρ;νeff = e�ective kinematic viscosity.
[302.044] � Univ. Assist. MSc. Francesco Romanò 4/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilMathematical Problem
Flow Past an Airfoil Problem
∇ · u = 0
u,t+∇ · (uu) +∇ · (νeff∇u) = −∇p
BC :
left edge: Free Stream → u = 2 m/s es;
external edges: Far Field → p = 0;
airfoil edges: No�Slip → u = 0;
IC : u = 0 , (p = 0);
Turbulence parameters
u = velocity �eld;p = relative pressure �eld divided by ρ;νeff = e�ective kinematic viscosity.
[302.044] � Univ. Assist. MSc. Francesco Romanò 4/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Instead of considering a �ctitious value for velocity, pressureand turbulence parameters, the simpleFoam solver can beemployed as pimpleFoam initialiser.
[302.044] � Univ. Assist. MSc. Francesco Romanò 5/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Instead of considering a �ctitious value for velocity, pressureand turbulence parameters, the simpleFoam solver can beemployed as pimpleFoam initialiser.
[302.044] � Univ. Assist. MSc. Francesco Romanò 5/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Instead of considering a �ctitious value for velocity, pressureand turbulence parameters, the simpleFoam solver can beemployed as pimpleFoam initialiser.
[302.044] � Univ. Assist. MSc. Francesco Romanò 5/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Instead of considering a �ctitious value for velocity, pressureand turbulence parameters, the simpleFoam solver can beemployed as pimpleFoam initialiser.
[302.044] � Univ. Assist. MSc. Francesco Romanò 5/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Solving the NSEs using a RANS (Reynolds AveragedNavier-Stokes) model implies that the simulation cannotrepresent the turbulence phenomenon in all its scales, butit just mimes its macroscopical e�ects;
. Considering turbulence models, in transportProperties isnecessary to set the properties1 of the chosen model2.
1a useful way for a rough evaluation of turbulence parameters couldbe found at website: www.cfd-online.com/Tools/turbulence.php
2In this case, the k − ε turbulence model will be used.[302.044] � Univ. Assist. MSc. Francesco Romanò 6/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Solving the NSEs using a RANS (Reynolds AveragedNavier-Stokes) model implies that the simulation cannotrepresent the turbulence phenomenon in all its scales, butit just mimes its macroscopical e�ects;
. Considering turbulence models, in transportProperties isnecessary to set the properties1 of the chosen model2.
1a useful way for a rough evaluation of turbulence parameters couldbe found at website: www.cfd-online.com/Tools/turbulence.php
2In this case, the k − ε turbulence model will be used.[302.044] � Univ. Assist. MSc. Francesco Romanò 6/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver
. pimpleFoam assumes an incompressible, unsteady, viscous�ow;
. pimpleFoam has full access to all the turbulence models inthe incompressibleTurbulenceModels library and thenon-Newtonian ones in incompressibleTransportModels
library implemented in OpenFOAM;
. Solving the NSEs using a RANS (Reynolds AveragedNavier-Stokes) model implies that the simulation cannotrepresent the turbulence phenomenon in all its scales, butit just mimes its macroscopical e�ects;
. Considering turbulence models, in transportProperties isnecessary to set the properties1 of the chosen model2.
1a useful way for a rough evaluation of turbulence parameters couldbe found at website: www.cfd-online.com/Tools/turbulence.php
2In this case, the k − ε turbulence model will be used.[302.044] � Univ. Assist. MSc. Francesco Romanò 6/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: k − ε Model
(ρk) ,t+(ρkui) ,xi =[(µ′ + µt
σk
)k,xj
]+
Pk + Pb − ρε− YM + Sk
(ρε) ,t+(ρεui) ,xi =[(µ′ + µt
σε
)ε,xj
]+
C1εεk (Pk + C3εPb)− C2ερ
ε2
k + Sε
where: k = Turbulent kinetic energy , ε = Dissipation
µt = ρCµk2
ε, Pk = −ρu′iu′j
∂uj∂xi
= µtS2 = µt2SijSij
S = Modulus of the mean rate-of-strain tensor
Pb = βgiµtPrt
T,xi , β = −1
ρρ,T |p
C1ε = 1.44 , C2ε = 1.92 , Cµ = 0.09 , σk = 1.0 , σε = 1.3
[302.044] � Univ. Assist. MSc. Francesco Romanò 7/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: k − ε Model
(ρk) ,t+(ρkui) ,xi =[(µ′ + µt
σk
)k,xj
]+
Pk + Pb − ρε− YM + Sk
(ρε) ,t+(ρεui) ,xi =[(µ′ + µt
σε
)ε,xj
]+
C1εεk (Pk + C3εPb)− C2ερ
ε2
k + Sε
where: k = Turbulent kinetic energy , ε = Dissipation
µt = ρCµk2
ε, Pk = −ρu′iu′j
∂uj∂xi
= µtS2 = µt2SijSij
S = Modulus of the mean rate-of-strain tensor
Pb = βgiµtPrt
T,xi , β = −1
ρρ,T |p
C1ε = 1.44 , C2ε = 1.92 , Cµ = 0.09 , σk = 1.0 , σε = 1.3[302.044] � Univ. Assist. MSc. Francesco Romanò 7/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;
◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;
◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;
◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;
◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;
◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;
◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Case Set-up
. Geometrical conditions:
◦ airfoil type: NACA0015;◦ chord length: 1 m;◦ span length: 1 m;
. Aerodynamic conditions:
◦ angle of attack: 5◦;◦ Reynolds number: 2 · 106;◦ free stream velocity: 2 m/s;◦ kinematic viscosity: 1 · 10−6 m2/s ;◦ �uid density: 1 · 103 kg/m3 ;
. Because of the employment of a steady solver (simpleFoam)for the initial guess, if a too high angle of attack is chosen,vortex shedding and other transient phenomena will occurdenying the convergence to a steady-state solution.
[302.044] � Univ. Assist. MSc. Francesco Romanò 8/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;
◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;
◦ extract the edges from the stl-�le using thesurfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. The mesh can be obtained via an Octave/Matlab scriptand the OpenFOAM snappyHexMesh tool;
. Algorithm steps:
◦ run the script NACA0015.m;◦ new �le in airfoil_Mesh/constant/triSurface/;◦ extract the edges from the stl-�le using the
surfaceFeatureExtract tool:airfoil_Mesh$ surfaceFeatureExtract;
◦ use the snappyHexMesh tool:airfoil_Mesh$ foamClearPolyMesh;airfoil_Mesh$ blockMesh;airfoil_Mesh$ snappyHexMesh -overwrite;
◦ visualize the third iteration step mesh.
[302.044] � Univ. Assist. MSc. Francesco Romanò 9/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. An alternative way for meshing is implementing a C-meshin blockMeshDict using the spline interpolation:
. Algorithm steps:
◦ create the mesh with the command<problem_folder>$ blockMesh;
◦ visualize the C-mesh with the command<problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 10/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. An alternative way for meshing is implementing a C-meshin blockMeshDict using the spline interpolation:
. Algorithm steps:
◦ create the mesh with the command<problem_folder>$ blockMesh;
◦ visualize the C-mesh with the command<problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 10/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. An alternative way for meshing is implementing a C-meshin blockMeshDict using the spline interpolation:
. Algorithm steps:
◦ create the mesh with the command<problem_folder>$ blockMesh;
◦ visualize the C-mesh with the command<problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 10/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. An alternative way for meshing is implementing a C-meshin blockMeshDict using the spline interpolation:
. Algorithm steps:
◦ create the mesh with the command<problem_folder>$ blockMesh;
◦ visualize the C-mesh with the command<problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 10/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Meshing
. An alternative way for meshing is implementing a C-meshin blockMeshDict using the spline interpolation:
. Algorithm steps:
◦ create the mesh with the command<problem_folder>$ blockMesh;
◦ visualize the C-mesh with the command<problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 10/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. For calculating important force coe�cients for the airfoil,the function {#include �forceCoeffs�} must be addedat the end of controlDict;
. In the �le forceCoeff lift and drag directions are speci�edas well as the values used to non-dimensionalize;
. As said, a good initial guess can be obtained solving thesteady-state case via simpleFoam and then remappingthe results for the pimpleFoam solver.
[302.044] � Univ. Assist. MSc. Francesco Romanò 11/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. For calculating important force coe�cients for the airfoil,the function {#include �forceCoeffs�} must be addedat the end of controlDict;
. In the �le forceCoeff lift and drag directions are speci�edas well as the values used to non-dimensionalize;
. As said, a good initial guess can be obtained solving thesteady-state case via simpleFoam and then remappingthe results for the pimpleFoam solver.
[302.044] � Univ. Assist. MSc. Francesco Romanò 11/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. For calculating important force coe�cients for the airfoil,the function {#include �forceCoeffs�} must be addedat the end of controlDict;
. In the �le forceCoeff lift and drag directions are speci�edas well as the values used to non-dimensionalize;
. As said, a good initial guess can be obtained solving thesteady-state case via simpleFoam and then remappingthe results for the pimpleFoam solver.
[302.044] � Univ. Assist. MSc. Francesco Romanò 11/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. For calculating important force coe�cients for the airfoil,the function {#include �forceCoeffs�} must be addedat the end of controlDict;
. In the �le forceCoeff lift and drag directions are speci�edas well as the values used to non-dimensionalize;
. As said, a good initial guess can be obtained solving thesteady-state case via simpleFoam and then remappingthe results for the pimpleFoam solver.
[302.044] � Univ. Assist. MSc. Francesco Romanò 11/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;
◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM simpleFoam Solver
OpenFOAM simpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the �uid and turbulent model properties intransportProperties and RASProperties and locatethem in <problem_folder>/constant/;
◦ set the initial conditions in the p, U, epsilon, k, nut andnuTilda �les and locate them in <problem_folder>/0/;
◦ set time step and data saving/storing options writingthe controlDict �le and locate it in<problem_folder>/system/;
◦ set discretization and splitting scheme details writingthe fvSchemes and fvSolution �les and locate themin <problem_folder>/system/;
◦ run the solver using <problem_folder>$ simpleFoam;◦ visualize with <problem_folder>$ paraFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 12/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;◦ run the transient solver using the command
<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;◦ run the transient solver using the command
<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;
◦ copy the mesh used in the steady-state case using<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;◦ run the transient solver using the command
<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;
◦ copy the IC from the steady-state case using<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;◦ run the transient solver using the command
<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;
◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;◦ run the transient solver using the command
<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;
◦ run the transient solver using the command<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;
◦ run the transient solver using the command<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;
◦ run the transient solver using the command<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Algorithm steps:
◦ set the dictionaries as before;◦ copy the mesh used in the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/constant/polyMesh/*
constant/polyMesh/;◦ copy the IC from the steady-state case using
<problem_folder>/cp -r
../<steady_problem_folder>/0 ./ ;◦ map the results using the command <problem_folder>$
mapFields ../<steady_problem_folder>
-sourceTime latestTime -consistent;◦ check the mapping with <problem_folder>$ paraFoam;◦ run the transient solver using the command
<problem_folder>$ pimpleFoam.
[302.044] � Univ. Assist. MSc. Francesco Romanò 13/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Solver Set-up
. Case folder structure:
→ <problem_folder>/
→ 0/
<steady-case data>
→ constant/
transportProperties
RASProperties
turbulenceProperties
→ polyMesh/
<steady-case mesh>
→ system/
controlDict decomposeParDict
fvSchemes extrudeMeshDict
fvSolution forceCoeffs
[302.044] � Univ. Assist. MSc. Francesco Romanò 14/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15
Incompressible
Navier�
Stokes
Flow Past an
Airfoil
pimpleFoam
TurbulenceModel
Case Set-up
Meshing
Solver Set-up
Parallel MPI
2�D Flow Past an AirfoilOpenFOAM pimpleFoam Solver
OpenFOAM pimpleFoam Solver: Parallel MPI
. Because of complexity reasons, it would be better to runthe case in parallel. OpenFOAM provides an integratedMPI tool for all the implemented solvers;
. The MPI (Message Passing Interface) is a language-independent communications protocol used to programparallel computers;
. Algorithm steps:
◦ decompose the domain using the commanddecomposePar;
◦ run the solver in parallel using the MPI tool:mpirun -np <proc_number> pimpleFoam -parallel.
◦ reconstruct the data using the commandreconstructPar.
[302.044] � Univ. Assist. MSc. Francesco Romanò 15/15