Title: Computational Fluid Dynamics
1Computational Fluid Dynamics Course Notes
Dr PK Dyson Sep 2004
2CFD Overview and Introduction to CFX
3Introduction
What do you want to know? What do you need to
define? Whats the physics?
4Solution of the Equations
- Equations are solved numerically, at a series of
discrete points in the flow domain. - 5 variables at 100,000 points implies what .?
- Results can be viewed graphically and processed
to provide numerical outputs.
For most packages, the data stream is
Geometry gtgt Mesh creation gtgt Fluid definition gtgt
Problem definition gtgt Solution gtgt Viewing of
Results
CAD (usually)
Mesh Generator
Pre-processor
Solver
Post-processor
5ANSYS CFX Overview (1)
Start gt University Software gt ANSYS gt ANSYS 10
This starts the ANSYS Workbench environment from
which the various individual components are
launched.
ANSYS Workbench (.wbdb file)
Mesh Control Parameters
CAD Import
Geometry
DesignModeller (.agdb file)
CFX-Mesh (.cmdb file)
Geometry file (.gtm)
6ANSYS CFX Overview (2)
Geometry file (.gtm)
Problem type
Solution control
CFX-Pre
Case file (.cfx)
Boundary conditions
Session file (.ses) holds record of commands
entered during session
Fluid properties
Journal file (.jou) holds record of commands for
particular database
Definition file (.def)
7ANSYS CFX Overview (3)
Definition file (.def)
Solver
Output file (.out)
Results file (.res)
(numerical data in text file)
CFX-Post
Forces
Velocities
Streamlines
Numerical output (via calculator and export)
Pressures
Turbulence
See Help- from Advanced CFX Panel Help gt Master
Contents ANSYS CFX, Release 10.0 Installation
and Overview gt Overview of ANSYS CFX gt ANSYS CFX
File types
8File Management
- Create a MyCFX folder on the local hard drive
and put each job in a different sub-folder. - Do not leave spaces in folder or file names
anywhere in the path to your working folder. - Work from the local hard drive or pen drive (not
across the Network from your U drive) - At the end of the session, drag and drop your
entire working folder to your pen drive. - WARNING Always keep files on you own independent
storage media the hard drives are cleaned each
night.
9Contact with ANSYS-CFX Staff
IMPORTANT NOTE If you encounter problems with
CFX, then by all means visit the CFX Community
pages (address is on the Resources Sheet), but do
not contact ANSYS-CFX Staff until you have first
discussed your problems with UoP staff. Contact
with ANSYS-CFX should normally be through UoP
Staff.
10Theory Overview
11General Principles - Revision
Mass Continuity
u2
u1
For steady flow
Momentum
net force acting on fluid rate of change of
momentum change of rate of momm flow
how?
12Mass Continuity Equation (1)
mass-velocity ?u
?y
y,v
?x
z,w
?v
x,u
Net rate of outflow of mass rate of depletion
of mass in control volume
13Mass Continuity Equation (2)
Substantial derivative
For incompressible flow, this becomes
14Momentum Equation (1)
Force on Control Volume Rate of Change of
Momentum
Velocity Changes across Control Volume
u
?y
?x
v
15Momentum Equation (2)
Forces Acting in x-Direction on Control Volume
?y
?x
16Momentum Equation (3)
Rate of Change of Momentum in x-direction
0 for steady flow (from continuity)
17Momentum Equation (4)
Net force in x-direction
18The Navier-Stokes Equations
For
- steady state
- 2-dimensional
- incompressible
19Navier-Stokes - Vector Notation
20Navier-Stokes - Summation Convention
Taking u u1 v u2 w u3
(separate equation for each of i 1 to 3
- where
- 1, 2, 3 represent x, y, z directions
- a subcripted comma and index represents a
derivitive - repeated subscript means set it to 1, 2, 3 in
turn and sum resulting variables
(so what does uj,j 0 mean?)
21The Energy Equation
Internal generation
u
?y
?x
v
Convection with mass transfer
Conduction by temperature gradient
22Analytical Example - Couette Flow
Moving Plate - vel us
s
Infinitely long
y
Stationary plate
x
23Solutions to the Equations
The set of equations for incompressible, viscous,
2D steady flow is
Unknowns are u, v, P which are to be solved in
terms of x and y - i.e. across flow domain.
Solutions are typically plots of velocity
vectors, streamlines, pressure contours (and
temperature contours if energy equation is added).
These may be processed to produce such data as
forces (eg lift and drag on a foil) or pressure
loss in pipes and fittings.
24Computational Grid
Since analytical solution is available only in
simplest of cases, numerical techniques are
required thus a grid across flow domain needs to
be defined
Unknowns are determined at each grid point
Concept may be extended into time domain
t
x
y
25Typical Grid Notation
i1, j1
i, j1
i-1, j1
i, j
i1, j
i-1, j
i, j-1
i1, j-1
i-1, j-1
26Solution Techniques
- Broadly speaking, one of three techniques is
adopted for the solution of the governing
equations - finite difference, in which the differential
terms are discretised for each element - finite volume, in which the governing equations
are integrated around the mesh elements - finite element, in which variation of variables
within elements is approximated by a function,
and a residual (or error term) is minimised. - The first of these is perhaps the easiest
conceptually, and thus we will use this to
outline a typical solution procedure. - CFX uses the finite volume method.
27Differencing Formulae (1)
u
ui1
ui
x
i
i1
Taylor Expansion
(second order central difference)
28Differencing Formulae (2)
Adding the Taylor Series equations
Thus, if we take, say, the x direction N-S
equation (steady for simplicity)
29The Equation Set
If we set up this set of equations at each of n
interior points in the domain, and we know the
boundary conditions (b) at the exterior points .
b
b
b
b
b
b
b
b
b
b
b
b
. then we will form 3n simultaneous equations in
3n unknowns. Unfortunately, these are
non-linear, so an iterative approach is usually
employed - eg.
guess u, v for the domain and insert as ui,j,
vi,j in previous set of equations
insert revised values of ui,j,vi,j
solve equations for u, v, P
check convergence
30The Pressure Correction Approach
Semi-Implicit Method for Pressure Linked
Equations - SIMPLE !!!!
Guess a pressure field
Solve N-S equations (not continuity) for u,v,
given these guessed pressures
Solution process may be iterative or time marching
Use modified continuity equation to calculate a
pressure correction
Do u, v values satisfy continuity? (convergence
criterion)
N
Y
Finish
31Boundary Conditions (1)
- Boundaries must be defined, but care must be
taken not to - under-define boundaries (insufficient data for
solution) - over-define boundaries (creating a physically
impossible situation) - eg. With parameters defined on boundaries as
follows ..
wall
u0,v0
uvalue v0 Pvalue
uvalue v0 Pvalue
u0,v0
wall
model is over-defined since velocity and
pressure are stipulated at inlet and outlet.
Values may thus not satisfy the continuity and
momentum equations.
32Boundary Conditions (2)
Boundaries defined will depend on nature of
equations to be solved (steady / unsteady,
incompressible / compressible, inviscid / viscous)
For example, for steady, incompressible, viscous
flow, solved by pressure correction method,
boundaries conditions may be
v 0 P value
P value
33Grids (1)
Structured Mesh usually comprising quadrilateral
elements
Physical Space
eg. circular duct
Computational Space
34Grids (2)
Aerofoil Section (Example of structured mesh,
refined in critical regions)
35Grids (3)
Unstructured Mesh usually based on triangular
pyramids (eg CFX 5)
- Important Modelling Considerations
- Grid refinement in critical areas
- Grid independent solution - checks required
- Computationally economic model
- coarse grid in non-critical areas
- make use of symmetry and periodic boundary
conditions - use 2-D and axi-symmetric models where possible
36Turbulence
vel at a point
u
time
37Introduction to Turbulence Modelling
Laminar Flow
Momentum diffusion by viscosity
Turbulent Flow
Additional momentum diffusion due to turbulence
Concept of turbulent (or eddy) viscosity, ?t
- ?t is not a fluid property, but depends on level
of turbulence in flow - concept leads to mathematical models to deal with
turbulence each model is an approximation to
what is really happening - one popular model (k-epsilon model) introduces
two further unknowns
38Turbulence Modelling the Maths
- Think of u,v,w and p as comprising of two parts
ensemble average values and turbulent
fluctuations. - Superscript bar denotes the ensemble average or
the mean value. - Dash denotes the fluctuating part.
- Turbulence fluctuations usually have small length
and time scales compared to the mean flow. - Substituting this decomposition to the
Navier-Stokes equations and taking the ensemble
average, we now get -
39Turbulence Closure
- Equations (also called Reynolds equations) for
ensemble average values are identical to the
Navier-Stokes equation except for the
cross-products of the fluctuation terms. - Since these terms have similar functions as
viscous stresses, they are called turbulent
stresses or Reynolds stresses. - To properly close the system, we have to define
the behaviour for turbulence cross-product terms.
- This is where many different types and levels of
turbulence modelling come in. - At the highest level, transport equations can be
set up for each of these terms. This will
increase the number of equations to solve by six.
Turbulence models based on this approach are
called Reynolds stress equation model (RSM) or
the second-order closure model. - A commonly used turbulence model in engineering
differs from this approach by reducing the number
of extra equations to only two and is known by
the name k-e model.
40k-e Model - Theory
In this model, the Reynolds stresses are linked
to the mean flow i.e.
where µt is the coefficient for turbulent
viscosity and is linked to the turbulent kinetic
energy k and dissipation e. The two extra
equations that are needed for the closure are the
transport equations for k and e.
41k-e Model Theory (continued)
Where
The (empirical) constants in the k-e model are
usually
42k- ? Turbulence Model - Summary
- requires two further equations, similar to
Navier-Stokes equations for k and ? - thus requires
- inlet values for k and ?
- initial guesses for k and ?
- estimates for these may be obtained from
equations such as the following, available in the
literature
- sensitivity to inlet turbulence quantities should
be checked, and may point to the need for
experimentally derived values for use in the CFD
model.
43CFD Health Warning !
- We have barely scratched the surface of the
theory of CFD. A few of the possible areas for
further fruitful reading are - nature of the equations under different
conditions - hyperbolic, parabolic, elliptic. - transient problems
- choice of boundary and initial conditions
- coupling between momentum and energy equations
(especially in buoyancy driven flows) - supersonic flows and shock capture
- turbulence modelling - what alternative models
are available? - wall boundary conditions (log law of the wall)
- Treat CFD with respect - a little knowledge is a
dangerous thing !
44Exercises
45Exercise 1
- Create folder MyCFX and a sub-folder Tutorial_1
- Start ANSYS CFX 10.0.
- In the Launcher, set the Working Directory to the
sub-folder you have just created and then go to
ANSYS gt Workbench 10.0. - In the Start panel that now opens, click Empty
Project (under New) - Go to Help gt ANSYS DesignModeller Help. In the
Contents panel, expand the CFX-Mesh Help tree and
click Tutorials. Click Click here. - Work through Tutorial 1 Static Mixer.
- This will take you through
- Geometry creation using DesignModeller
- Mesh generation using CFX-Mesh
- At the end of this tutorial, under the paragraph
If you want to continue by working through the
ANSYS CFX example , follow steps 1, 2 and 3 to
open the mesh in CFX-Pre. - Now click Help gt Tutorials which will take you
into the CFX (Fluid Modelling) Tutorials (as
opposed to the DesignModeller/CFX-Mesh (Solid
Modelling) Tutorial you have just been working
through) and click Flow in a Static Mixer.
46Exercise 1 (continued)
- Continue with this tutorial, but note the
instructions in para 4 at the end of the
DesignModeller Tutorial- - missing out the instructions in the section
Creating a New Simulation. Note that you do not
need to copy the sample file StaticMixerMesh.gtm
to your working directory if you have just
created the mesh in CFX-Mesh, since you will want
to use your new mesh and not the one supplied
with ANSYS CFX. For the Importing a Mesh
section, the only action that you need to carry
out is to select Assembly from the Select Mesh
drop-down list, as the mesh is loaded
automatically when you start ANSYS CFX in the
manner described above. - This will take you through
- Problem Definition using CFX-Pre
- Solution using CFX Solver Manager
- Viewing of results using CFX-Post
47Now make sure you understand ..
- Whats the difference between
- Sketching mode and modelling mode
- DesignModeller and CFX-Mesh
- Surface Mesh and Volume Mesh
and now consolidate what youve done by looking
through this example .
In ANSYS Workbench go to Help gt ANSYS Workbench
Help and in the Contents Tree go to
DesignModeller Help gt Welcome to the
DesignModeller 10.0 Help gt Process for Creating a
Model Read through the pages and run the video
sequences to remind yourself of the process of
creating a geometry.
48Exercise 2
- Work through Tutorial 2, Static Mixer (Refined
Mesh) which will show you - more about the mesh generation process
- modifying geometry
- use of CFX Command Language (CCL) to avoid too
many repetitive keystrokes. - As before you will need to start in the
DesignModeller/CFX-Mesh (Solid Modelling)
Tutorial and switch to the CFX (Fluid Modelling)
Tutorial.
49Exercise 3
- Refine the mesh even further in the outlet region
of the mixer by inserting a mesh control as
follows. - Re-open StaticMixer in CFX-Mesh
- Right click Control gt Insert Point Spacing
- Click Point Spacing 1 in Detail View and change
the settings to Length scale 0.1 m, Radius of
Influence 0.5 m, Expansion Factor 1.2 - Right click Point Spacing gt Insert Line Control
- Click Line Control 1
- In Detail View, for point 1 click Apply, and
accept coordinates as 0,0,0. Repeat for point 2
and make coordinates 0,0,-2. Click in the box
next to spacing, then click Point Spacing 1 in
Tree View click Apply. - Right click Body 1 gt Suppress and observe
position of Line Control. Unsuppress Body 1. - Generate the surface mesh as before and note the
difference around the exit. - Generate Volume Mesh, apply the physics (use
import CCL in Pre), Run Solver and view results.
50Finding Out More The Help Pages
Help on ANSYS Workbench, DesignModeller and
CFX-Mesh is available on the Workbench Help
button and the subsequent Folder Tree
Help on CFX Pre, Solver and Post is accessed from
the Advanced CFD panels (-Pre, -Solver, -Post) by
clicking Help gt Master contents
Now use the Help pages to answer the following
questions.
51Finding Out More
- ANSYS Workbench Help gt CFX-Mesh Help
- What is the principle type of mesh utilised by
CFX? What is its advantage over a
quasi-rectangular mesh? - What is mesh control? Why use it?
- What is inflation? Why use it?
- What is a mesh independent solution? (Carry out a
search using mesh NEAR independent as keywords.
Make sure that pages referred to are for CFX-Mesh
or DesignModeller pages referring to, for
example, DesignXplorer or Simulation (top left of
page) are not relevant to you) - CFX Help gt CFX-Pre gt Fluid Domains
- What options are available for the fluid domain
models? - What standard fluids are available?
- CFX Help gt CFX-Pre gt Boundary Conditions
- What boundary conditions are available?
- CFX Help gt CFX-Pre gt Initial Conditions
- Why are initial values set?
- CFX Help gt CFX-Pre gt Solver Control
- What are convergence criteria?
52Treatment of Walls and Flow Boundaries
Further reading from CFX Help pages
Near Wall Modelling (ANSYS CFX-Solver 10.0
Modelling gt Turbulence Near Wall Modelling -
Modelling Flow Near the Wall) Boundary Condition
Modelling (ANSYS CFX-Solver 10.0 Modelling -
Boundary Condition Modelling)
53Exercise 4
y
z
x
Although this is an external flow, (as opposed to
the previous pipe example which was internal), we
still need to define a limit to the domain. This
will effectively be a wind tunnel in which the
cylinder will be placed. We will treat this as a
2-D example by making the fluid domain thin in
the x direction and attaching the cylinder to the
wall at each side. You should create a new
folder for this problem.
54Using Ansys DesignModeller
- Sketch surface A (the low-x surface) as a
rectangle. - Sketch the circle (rectangle and circle will both
be part of sketch 1) - Extrude in the x direction.
The 3D body formed by the box with the cylinder
cut out, sometimes confusingly referred to as the
solid, is where the fluid will flow.
0.3
2
10
surface A
diameter 0.3
y
x
z
point 0 0 0
55Using Ansys CFX-Mesh
If we want, say, around 6 elements in the region
with the most coarse mesh (near the exit), then
this gives a default mesh length of about 0.3 m.
Since this is a 2D problem, it needs only to be 1
element thick, which is why we also make the box
width 0.3 m. Would making it thicker give any
benefit or penalty?
- Open CFX-Mesh and create a 2-D region for each of
the surfaces (left, right, inlet, outlet,
cylinder leave top bottom undefined they
will form the default 2D region), giving each a
suitable name (you will use these later to define
boundary conditions). - Set mesh default body spacing to a maximum of 0.3
m. - Set up Inflation parameters (use defaults) and
apply inflation to the cylinder with a maximum
thickness of 0.03 m.
56- Place mesh controls to refine the mesh in the
region of the cylinder and its wake. - Create surface mesh, and check it to ensure it is
refined in the appropriate places. - Create the volume mesh (thus writing the .gtm
file) and start CFX-Pre.
57Using CFX-Pre
- Create a fluid domain - use standard air or
water, select steady state, k-? turbulence model,
scalable wall function, isothermal, non-buoyant.
Set reference pressure at 0 Pa. - In the Object Selector Panel, double click on the
material you have chosen (under the library
tree), and make a note of its density and dynamic
viscosity (under Transport Properties). - Create boundary conditions
- non-slip smooth wall on the cylinder
- free slip wall on top and bottom surfaces (why?)
- symmetry on the left surface (why?)
- symmetry on the right surface
- inlet velocity giving Re105 based on cylinder
diameter - outlet velocity set to average static pressure
of 0 Pa.
58- You can check and edit Boundary Conditions by
double clicking on the relevant condition in
Object Selector. Note that the Default
boundary condition (a no-slip wall) applies to
any boundary which is undefined. - Apply defaults for initial values.
- Apply defaults for the solver parameters, except
number of iterations which you should change to
50. - Write definition file and go to Solver.
59Using CFX-Solver
- Run the solver. Does it converge within the 50
iterations which have been set? If not you can
click start again and the solver will continue
where it left off. (If, when tackling other
problems, it shows no prospect of converging
after a reasonable time, click stop and
consider modifying the modelling strategy).
Using CFX-Post
- View streamlines, using the inlet as the
location. - Create a line from 0.15,0,1 to 0.15,2 ,1 using a
cut line type. Now use this as the location for
the streamlines. (where the line cuts an element,
a seed point for a streamline is created. - Move the line to a location just downstream of
the cylinder.
60- Draw vectors and a pressure profile based on one
of the side walls. Experiment with different
arrangements of streamlines, different lengths of
vector arrow, and with a shaded pressure plot (by
checking the Draw Faces box on the Render
panel). - Print one of the plots to a JPEG file using File
- Print, and check the White background box.
This could later be included in a report. - Use the line which you created earlier to produce
a chart (ie a graph) showing how the z-direction
velocity varies across the wake at a position
just downstream of the cylinder. - Use the calculator to find the total force on the
cylinder in the z-direction. Compare this with
the drag shown in the .out file (you will need to
add 2 values from .out together to get the drag -
why?). Calculate the drag coefficient - is it
anywhere near correct?
61With a bit of cunning, and judicious use mesh
controls and CFX-Post, this is possible ..
62Modifying the Model
Try placing an extra cylinder in close to the
first. What is the effect on the flow and the
drag on the cylinders?
63- Questions
- What is the effect of having a very narrow (say
0.01) or a very wide (say 3.0) box? - How does the proximity of the top and bottom
walls affect the solution? - How does the position of the upstream and
downstream boundary affect the solution? - Could a plane of symmetry have been used to
reduce the computational time?
64Extracting Numerical Data
The most useful ways of extracting numerical data
are Output File. .out file contains text based
data on both solution and results. In particular
there is a listing of forces (x, y, z components,
normal and tangential) acting on all defined
boundaries. Calculation Facilities. CFX-Post has
capability of calculating certain quantities (eg
total mass flow through a boundary). See help
files for information. Charts. CFX-Post can
display line graphs of variation of a variable in
space or time. Firstly a line in space, a
polyline, has to be defined (see over). Then the
chart icon leads you through appropriate
menus. Unfortunately hard copy of charts is
tricky, so it is easier to export the chart data
and use Excel to plot it.
65Defining Polylines
Intersection Line A line of intersection between
a boundary (defined in CFX-Pre) and a plane
(defined in CFX-Post) may be used. File Input A
text file is written (outside CFX) containing
co-ordinates of the points required, in a format
shown by the following example. Coordinates may
define a straight or curved line. Data (eg
pressures) will only be plotted at the points you
define, so if you want good resolution, you need
plenty of points, even if its a straight line.
66Polyline Data File
0 0 0 0.005 0.01193 0 0.0075 0.01436 0 0.0125 0.
01815 0 0.025 0.02508 0 0.05 0.03477 0 0.075 0.04
202 0 0.1 0.04799 0 0.15 0.05732 0 0.2 0.06423
0 etc
x y z coodinates, delimited by tabs or spaces.
The Polyline is loaded using the Polyline icon
67Exporting Data from CFX-Post
Once a polyline has been defined a chart may be
produced. Also the variables may be exported for
points defined by the polyline using File ?
Export. Select the variables required (eg x, y,
z, pressure (hold down control to make multiple
selections)) and locator (eg polyline1) and give
an appropriate file name. The data is formatted
as a series of x-y-z co-ordinates, and values for
the parameters plotted. The example overleaf
shows x, y, z co-ordinates together with values
for P, u, v, w. This has been tidied up by
loading the file into Excel, using space and
( characters to delimit data, and then carrying
out a search and replace to get rid of )
characters.
68Exporting Data - Example File
x - Coordinates m y - Coordinates m z
- Coordinates m 1 - Pressure kgm-1s-2
2 - Velocity ms-1 -6.12E-16 0.00E00
2.00E01 -3.29E-05 1.89E-07 7.22E-07 1.88E-0 -5.48
E-16 0.00E00 1.89E01 7.86E-07 7.92E-08 5.05E-07
1.87E-03 -4.83E-16 0.00E00 1.79E01 6.24E-05 2.48
E-06 6.70E-07 1.94E-03
Note data here for each point stretches across 2
lines as velocity has 3 components.
After manipulation in Excel, a chart can be
plotted