CFD {
Solution
Algorithms
N-S Equations
PISO
SIMPLE
Initial/Boundary
Conditions
CFD { Solution Algorithms
Full solution { SOE3213/4: CFD Lecture 3
recap
CFD {
Solution
Algorithms
N-S Equations
r:u = 0 (1)
@ ux 1 @p
N-S Equations
PISO
+ r:(uux ) = + r2 ux (2)
SIMPLE @t @x
@ uy 1 @p
+ r:(uuy ) = + r2 uy (3)
Initial/Boundary
@t @y
Conditions
@ uz 1 @p
Full solution {
+ r:(uuz ) = + r2 uz
recap
(4)
@t @z
Transport equation form, with source
1 @p
@x
Two main problems
1 The equation is non-linear
2 The source term involves p
CFD {
Solution
Algorithms
NSE 3 equations for 4 variables,
N-S Equations
+1 constraint equation.
PISO
SIMPLE
Need p to nd u, need u to nd p
Equations solved sequentially
Initial/Boundary
Conditions
Full solution {
recap
Iterate until all elds correct
Several dierent approaches used to solve these equations. 2
main ones :
PISO { Pressure Implicit Splitting of Operators { for time
dependent
ows
SIMPLE { Semi-Implicit Method for Pressure Linked
Equations { used for steady state problems
CFD {
Solution
Algorithms
PISO
N-S Equations
PISO Eqn (2) if we know p ,
ux, can nd ux .
SIMPLE
Eqns (2{4), (1) combined ! equation for p given the
Initial/Boundary
Conditions
ux :
1
Full solution {
recap
r: rp = (
ux term)
A
Flux has to satisfy continuity (1)
PISO algorithm as follows :
1 Guess p ,
ux (values from previous timestep)
2 Use equation (2) to nd ux , uy etc.
3 Solve pressure equation for p
4 Correct
ux to satisfy continuity
CFD {
Start
Solution
Algorithms
N-S Equations
Guess p, flux
PISO (values from previous
SIMPLE
timestep)
Initial/Boundary
Conditions Use equation (3) to find
ux, uy, uz
Full solution {
recap
Solve pressure equation
to get p
Correct flux to satisfy
continuity
Y
Next
timestep?
N
CFD {
Solution
Algorithms
SIMPLE
N-S Equations Could iterate PISO until steady-state. More usual to use
PISO SIMPLE.
SIMPLE
Initial/Boundary
Conditions
r:u = 0
r:(uux ) = 1 @@ px + r2ux
Full solution {
recap
r:(uuy ) = 1 @@ yp + r2uy (5)
r:(uuz ) = 1 @@pz + r2uz
1 Guess an initial pressure eld p
2 Use equation (5) to create a velocity eld u from this
pressure eld
CFD {
3 Find a correction p 0 to the pressure eld
Solution
Algorithms
N-S Equations p = p + p0
PISO
SIMPLE
4 Correct the velocity (
ux) to obey continuity.
Initial/Boundary
Conditions
In theory, p and u should now be the desired solution. In
Full solution { practice, it is necessary to repeat this procedure as an iterative
recap
process.
If new solution p , u adopted at each step ! algorithm
becomes unstable. Thus, use underrelaxation :
5 Underrelax solution
pn+1 = p + (1 )pn
is underrelaxation parameter. At each step of the iteration,
the error in the solution (the residual) should decrease {
residuals for all variables should be monitored to ensure this.
CFD {
Solution Start
Algorithms
N-S Equations Guess p *
PISO
SIMPLE
Find u* from
Initial/Boundary momentum eqn.
Conditions
Full solution {
Find pressure correction p’
recap
Find flux correction
Correct fields
p**= p* + p’
Update fields
(underrelaxation)
n Tolerance achieved?
y
CFD {
Solution
Algorithms
Initial/Boundary Conditions
N-S Equations
PISO
SIMPLE
Initial condition { state of p and u at all points in the
ow.
Initial/Boundary
most
uid
ow problems parabolic or hyperbolic !
Conditions
Full solution {
recap
solution depends in part on initial conditions
specify known values for p and u, or make sensible guess
may need to timestep until the eect of the I.C. absent
Steady viscous
ows { elliptic
however methods parabolic { need starting conditions
Boundary conditions { largely specify what the solution will be
CFD {
Solution
Algorithms
N-S Equations
PISO
3 main types of b.c. { walls, inlets, outlets
SIMPLE
Initial/Boundary Walls { u = 0 parallel to the wall (unless the wall is
moving in which case the
uid will share the motion)
Conditions
Full solution {
recap
Fluid inlet { specify u.
Fluid outlet { specify p
N.B. If b.c. incorrectly specied, problem becomes ill posed {
no solution possible.
CFD {
Solution
Algorithms
Full solution { recap
N-S Equations
PISO
SIMPLE Build mathematical model of the problem
Initial/Boundary
Conditions
(NSE, turbulence, combustion. . .
Full solution {
Discretise the equations on a mesh
recap
converts mathematical model to dierence equations
Solve the discretised equations
inverting discretised matrix equation
NSE nonlinear, ! PISO and SIMPLE
Analyse the results
check results make sense physically,
check numerical solution, eg. mesh independence
process data to extract information
CFD {
Solution
Algorithms
N-S Equations
Using commercial code :
PISO
SIMPLE
Dene the geometry
Initial/Boundary Generate the mesh
Conditions
Full solution {
Switch on physical models
Specify physical constants
recap
Specify boundary/initial conditions
Specify numerical parameters
Run the solver
Postprocess results