Good Practice in CFD
.
Material covered
Introduction External and internal flow
The CFD process Geometry, meshing, simulation, post-processing The issues For each of the steps in the CFD process
• The Reynold’s number • Verification and validation
Test case 1 Simulation of flow over a 2D backstep • Model selection
• Order of accuracy • Mesh verification
Test case 2 Simulation of flow over an airplane
• y+: the non-dimensional distance from the wall • Turbulence model selection
• The drag prediction workshops (variation in CFD results) Test case 3 Pulsatile (unsteady) blood flow
• Verification of number of pulses, spatial and temporal spacing
Test cases 4 & 5 Verification in CFX (tank sloshing) and in OpenFOAM (rim-driven thruster) Checklist The things to consider for setting-up, running and post-processing a CFD
• Geometry > mesh > simulation > post-process
Introduction – the process
http://aaac.larc.nasa.gov/tsab/cfdlarc/aiaa-dpw/
Simulation Mesh
Introduction
0 5 10 15 20 25 0 0.2 0.4 0.6 0.8 1 non-dimensional time fl o w r a te m 3 /sThe issues - geometry
• Construct from scratch? OR
• Supplied geometry?
• Feature definition – wrapping • Outer domain (for external flow) • Parameterisation
The issues – geometry software
Rhino Solidworks CATIA NX4 DesignModelerThe issues - mesh
• Mesh tool? AND
• Mesh strategy?
• Boundary layer mesh? • Mesh dependence? • Computational cost?
The issues – mesh software
Solidworks Harpoon ICEM CFD Starccm+ ANSYS mesherThe issues - simulation
• Model definition? AND • Solution strategy? • Boundary conditions? • Initial conditions? • Monitoring? • Convergence?The issues – simulation software
Starccm+
OpenFOAM
Fluent
Reynold’s number
• Why is Re important?
Laminar > Transition > Turbulent
Increasing Re
Boundary layer behaviour/representation
http://www.petrodanesh.com/Virtual%20Education/Mechanics/ANSYS-FLUENT/ANSYS%20CO/fluent12-lecture06-turbulence.ppsx
Simulation – accuracy?
• Which of the above Cp variations is correct ? • Is either of them correct ?
• If so, how accurate are they ?
The issues – post-process
• Need to show quantitative results • Explain the results
Verification
Validation
Errors
Significance
Verification & Validation
• Verification
Check for correct setup
• Validation
Test case 1
.
2D flow over a backward facing step – simulation
• Model definition? AND • Solution strategy? • Boundary conditions? • Initial conditions? • Monitoring? • Convergence? • Solver settings • Mesh dependence Resolution Type Boundary layer mesh
Memory
• Convergence • Simulation time
Hardware
Solver setup: default settings
Solver setup: change to 1st order
Solver setup: pressure algorithm set to 2nd order
Solver setup: pressure based; SIMPLE; 2nd order (finer mesh)
Solver setup: switch to SIMPLEC and use higher under-relaxation factors
Mesh spacing = 0.5mm
So SIMPLEC converges well with high under-relaxation factors. BUT….do we trust the solution?
Solver setup: pressure based; Coupled; 2nd order (switch from SIMPLEC for finer mesh)
Coupled SIMPLEC
Coupled
Selecting Coupled from the Pressure-Velocity Coupling drop-down list indicates that you are using the
Switch to 1st order
Test under-relaxation
Switch to 2nd order
Switch to coupled solver Mesh spacing = 0.25mm
Solver setup: The coupled solver
Solver setup for mesh dependence
• Coupled solver is more robust and is recommended for steady-state solutions
N.B. only incompressible flow considered here
• Use at least 2nd order discretisation schemes
• Check convergence
N.B. aim for at least three orders of magnitude
• Mesh dependence
Mesh dependence – x-component of shear stress on bottom wall.
Boundary (layer) mesh or inflation layer
1mm spacing
1mm spacing 5 layers 0.1mm first layer Growth rate = 2.0Boundary (layer) mesh or inflation layer
0.5mm spacing
0.5mm spacing 5 layers 0.1mm first layer Growth rate = 1.5Boundary (layer) mesh or inflation layer
0.25mm spacing
0.25mm spacing 5 layers 0.1mm first layer Growth rate = 1.2The Lyceum cluster
Logging into the Lyceum cluster
• You’ll need to request access to the Lyceum cluster from serviceline
• Read the web-pages (including the wiki pages) • Use secure shell to remotely login
Fluent on the Lyceum cluster
• Type module load fluent/14.5.7
• Type fluent 2d –t4 &
– to run a 2d session of Fluent using 4 processes
– Note: only use this on the head node to perform quick tests
• A special script is needed to submit jobs to the scheduler in order to run
on the slave nodes
Test case 2
.
Drag prediction workshop
DPW-4 - grid guidelines
• Grid Convergence Case – NASA Common Research Model:
– Coarse (3.5M), Medium (10M), and Fine (35M) grids are required; The Extra-fine (100M) grid is optional
– Total grid size to grow ~3X between each grid level for grid convergence cases – Initial spacing normal to all viscous walls (RE=5e+6 Based on CREF=275.80):
• coarse: y+ ~ 1.0 dy = 0.001478
• medium: y+ ~ 2/3 dy = 0.000985
• fine: y+ ~ 4/9 dy = 0.000657
• extra-fine: y+ ~ 8/27 dy = 0.000438
– Recommended: generate grids with 2 cell layers of constant spacing normal to viscous walls
– Grid convergence cases must maintain the same grid family between grid levels, i.e. maintain the same stretching factors, same topology, etc.
– Growth rate of cell sizes in the viscous layer should be < 1.25.
Grid guidelines – coarse grid
Turbulence model selection
ALSO consider how to model
the near wall behaviour
Harpoon – first mesh
• Mesh settings
Surface cell size = 138mm
• BL settings
Initial cell height = 20mm
No. of layers = 3
Expansion rate = 1.3
• Volume mesh: 389,585 cells
• Including BL mesh: 553,566 cells • 39 seconds to create mesh
Harpoon – second mesh
• Mesh settings
Surface cell size = 69mm
• BL settings
Initial cell height = 2mm
No. of layers = 4
Expansion rate = 1.5
• Volume mesh: 1,363,903 cells
• Including BL mesh: 2,238,970 cells • 112 seconds to create mesh
Harpoon – third mesh
• Mesh settings
Surface cell size = 69mm
• BL settings
Initial cell height = 0.5mm
No. of layers = 10
Expansion rate = 2.0
• Volume mesh: 1,363,903 cells
• Including BL mesh: 3,521,225 cells • 148 seconds to create mesh
DPW- 5 summary - drag
DPW- 5 – drag (turbulence models)
• Scatter is still large for coarser grids
Test case 3
.
Coronary artery stent design
(pulsatile flow)
Coronary artery disease
• Coronary Artery Disease (CAD) is a condition caused by the accumulation of plaque (usually atheromatous or fibrous plaque) on the inner walls of the artery.
Geometry construction
• Representative models of the ART stent and Bx VELOCITY are constructed using Rhinoceros 4.0
Problem formulation
• Blood flow in coronary arteries
• Inlet velocity profile
Flow type Unsteady, Newtonian, Incompressible and
laminar
- Unsteady due to the pulsatile nature of blood flow
-Blood behaves as a Newtonian fluid for
shear rates higher than 100 s-1 (1)
- Incompressible laminar flow for Reynolds numbers lower than 200
Dynamic Viscosity(μ) 3.7x10-3 Pa-s
Density (ρ) 1.06 x 103kg/m3
Peak and mean blood velocities 8.99 cm/s & 5.04 cm/s Peak and mean Reynolds number 77 & 44
Simulation setup
• Governing Equations
∇.(v) = 0 (1)
ρ(∂v/∂t) + ρ(v.∇v ) = -∇P + μ∇2v (2)
• Boundary conditions
– Numerical simulations are performed over a quarter stent to exploit symmetry
Inlet: velocity specified as a
Outlet:zero pressure
Plane2: Periodic/cyclic boundary condition
Stent & artery wall: No slip wall
Mesh, time-step and pulse
Time step 10-3s
Mesh size ~ 1 million cells
Mesh dependence test Time step independence
• Various time-step, mesh, and blood-pulse dependence tests help to
Meshing
• Tool used for meshing and CFD runs: Star CCM+ 3.06.006
Cells 1,097,951 Interior faces 6,023,874 Vertices 4,850,151 Cells 1,076,793 Interior faces 6,177,303 Vertices 5,010,556
Results – wall shear stress
• Axial WSS patterns at point 3 of the cardiac pulse – areas of low WSS are localised around the struts and the connectors.
• In earlier studies low WSS areas are reported to correlate with sites of more intimal thickening
Test case 4
.
Sloshing in a LNG tank
Test case 5
.
Checklist (1)
• Grid design
Geometry (check/fix CAD model)
Boundary conditions
Boundary layer (Turbulence model)
y+ of first layer of grid points
how many points in the boundary layer?
structured BL or size functions or refinement?
Avoid skew cells
Checklist (2)
• Validation
Compare to experimental data
Compare with other simulations
• Grid dependence
At least 3 (preferably 4) different grid resolutions
Select a sensible range of grids
8 times 8?
• Time dependence
At least 3 significantly different time step sizes
Use engineering judgement and a sensible
Checklist (3)
• Solution scheme
Pressure based (segregated) or density based
(coupled) solver ?
Implicit or explicit ?
At least 2nd order accuracy (in space and time)
Set high under-relaxation parameters
Monitor residuals, derived variables, point data
• Flow physics
Post-process (Fluent, Fieldview, TecPlot,
Ensight)
Checklist (4)
• Convergence problems
Mesh quality (errors)
Boundary conditions
Under-relaxation
First order and then switch to second order
• Slowness due to problem size
Check memory and CPU power
Consider running in parallel
o speed-up from multiple processors
Checklist (5)
• Research the literature
• Journal and conference papers, reports etc • Read the software manuals
Casey, M. & Wintergerste, T., 2000, Special Interest Group on “Quality and Trust in Industrial CFD”,
Other resources: see articles and
papers in the Articles folder
• Software manuals
Check recommended settings
• External aerodynamics best practice • Marine CFD best practice guidelines • Simulation versus reality
Summary – learning outcomes
Good Practice in CFD
Understand the key steps in setting-up, running and post-processing a CFD simulation.
Knowledge about the issues relating to each of these steps.
Appreciate the importance of verification (particularly with respect to mesh resolution and the effect this has on results).
Understand the significance of the Reynold’s number.
Knowledge about turbulence model selection and the impact of mesh resolution close to solid boundaries.
And finally!
http://www.soton.ac.uk/~nwb/lectures/GoodPracticeCFD
GoodPracticeCFD_2015.pdf
CFD surgeries (Dr Zheng-Tong Xie) during semesters 1 & 2
Blackboard (http://blackboard.soton.ac.uk/) CFD-SURG: enrolling code is
fluent
ANSYS portal (use customer number 237419)