Fraction Step Method for Solving Incompressible Navier Stokes Equation
Solution Algorithms for the Incompressible Navier...
Transcript of Solution Algorithms for the Incompressible Navier...
Solution Algorithms for the Solution Algorithms for the Incompressible Incompressible NavierNavier--Stokes Stokes
EquationsEquations
Howard ElmanUniversity of Maryland
1
The Incompressible Navier-Stokes Equations
0 div grad)grad( 2
t
=−=+⋅+∇−
ufpuuuu να
α=0 → steady state problemα=1 → evolutionary problem / emphasized here
N
D
snpnu
wu
Ω∂=−∂∂
Ω∂=
on
on
D
N
Ω∂Ω∂Ω
Inflow boundary: ∂Ω+ = x∈∂Ω | u· n > 0
Characteristic boundary:∂Ω0 = x∈∂Ω | u· n = 0
Outflow boundary:∂Ω- = x∈∂Ω | u· n < 0
3,2,1 ,in =⊂Ω ddR
2
The Incompressible Navier-Stokes Equations
For pure Dirichlet problem: ∂ΩD = ∂Ω , pressure solution is defined up to constant. In this case, require
0=⋅+⋅ ∫∫+− Ω∂Ω∂
nwnw
Volume of fluid flowing into Ω equals volume of fluid flowing out
Enclosed flow: everywhere on ∂Ω0=⋅nw
3
The Stokes Equations
0 div
grad- 2
=−=+∇
u
fpu dR⊂Ωin
0) div(
) div(:
)( ),( allfor s.t. ),( ),( Find 21
21
0
=
=−∇∇
Ω∈Ω∈Ω∈Ω∈
∫
∫ ∫∫
Ω
Ω ΩΩ
uq
fvvpvu
LqHvLpHu EE
Weak form:
yyxxyyxx vuvuvuvuvu )()()()()()()()(: Here 22221111 +++=∇∇
4
Approximation by Mixed Finite Elements
Choose bases φj for velocities ψj for pressures
Velocity basis functions have the form
φ
φ 0 and 0
Seek discrete approximationsuh = ∑j ujφj ≈ uph = ∑j pjψj ≈ p
0) div(
) div(:
),( allfor s.t. , , Find 0
=
=−∇∇
∈Ω∈∈∈
∫
∫ ∫∫
Ω
Ω ΩΩ
hh
hhhhh
hhh
hh
hhEh
uq
fvvpvu
MqXvMpXu
5
Result: Matrix Equation
=
gf
pu
BBA T
0
A=[aij], aij=∫Ω ∇φj∇φi, discrete vector Laplacian
B=[Bij], bij=∫Ω ψj divφj , discrete (-)divergence
Coefficient matrix is symmetric indefinite
0 BBA T
One other important matrix: pressure mass matrix Q=[qij], qij=∫Ω ψjψi
Important property: uniformly well-conditioned, κ(Q)=O(1)
6
Mass Matrices
ψj ψi
h
Q=[qij], qij=∫Ω ψjψI =2h/3 j=ih/6 j=i+1, i-1
In one dimension: Q~ hI
For problems in d dimensions, Q~hdI
We will see a velocity mass matrix as well
1D Example
7
The Inf-sup Condition
0|||||||||) div,(|
supinf 0constant >≥∇≠≠ γ
qvvq
vq
Equivalently, given any q, there exists v such that
For continuous spaces:
Velocity space is “rich enough” for this bound to hold
0||||||||) div,( >≥
∇γ
qvvq
8
The Discrete Inf-sup Condition
0|||||||||) div,(|
mmin 0constant >≥∇≠≠ γ
hh
hhvq qv
vqax
hh
These conditions are not guaranteed. If they hold, then
Analogous condition for discrete spaces:
The Schur complement is spectrally equivalent to the pressuremass matrix (and hence is uniformly well-conditioned)
21
2
),(),( Γ≤≤
−
qQqqqBBA T
γ
Matrix version:
0),(),(
|)B,(|mmin
2/12/10vconstantq >≥≠≠ γQqqAvv
vqax
9
Iterative Solution of Discrete Stokes Equations
=
00 f
pu
BBA T
||||)/()(1
)/()(12|||| 0
2/
radbc
adbcr
k
k
+−
≤
]][0-b d-a c
[λ ⊂
Coefficient matrix is symmetric indefinite• MINRES algorithm can be used (short recurrences )• Eigenvalues are contained in two real intervals
• Convergence bound forMINRES :
• Seek preconditioner to make these intervals small
10
Iterative Solution of Discrete Stokes Equations
=
pu
MA
pu
BBA
S
T
00
0 λ
SMA0
0Proposed form for preconditioner:
Effectiveness depends on eigenvalues of
pMBu
pBAu
S
T
λλ
==− )1(
1)-( ,1 λλµµ ==− pMpBBA ST
For MS=Q, pressure mass matrix, inf-sup bound µ (whence λ) is independent of discretization parameter h
λ = (½) (1±(1+4µ)1/2)
11
Consequence
• Convergence rate is independent of mesh
• Implementation: requires Poisson solve A-1vmass matrix solve Q-1q
• Practical choice: use fast methods (multigrid) for first taskdiagonal approximation for second task
• Result: Optimal solver for steady Stokes
QA
00
=
gf
pu
BBA T
0 For MINRES applied to
with preconditioner
12
Stabilization
hhh
hh vqvvq
allfor 0|||||||||) div,(|=
∇
Discrete inf-sup condition (typically) fails to hold if for some qh
Equivalently, for some vector q
vQqqAvv
vq vectorsallfor 0
),(),(
|)B,(|2/12/1
=
⇒ q∈ null(BT), problem is rank-deficient
This is true for “natural” elements, such as equal order velocitiespressures on common grids!
13
StabilizationExample:
Q1 velocities, bilinear P0 pressures, piecewise constant ,Red-black pressure mode ∈ null(BT),
corrupts pressure solution
Fix: relax discrete incompressibility in a consistent mannerregularization procedure
Result:
=
− 0f
pu
CBBA T
C=stabilization operator
14
Solution Strategy
Remains the same: preconditioned MINRES with preconditioner
matrix mass pressure ~ ,00 QMM
AS
S
21
2
),(),)(( Γ≤+≤
−
qQqqqCBBA T
γ
Effectiveness derives from
15
Return to Navier-Stokes Equations
0) div(
) div()(:
)( ),( allfor s.t. ),( ),( Find 21
21
0
=
=−∇⋅+∇∇
Ω∈Ω∈Ω∈Ω∈
∫
∫ ∫∫
Ω
Ω ΩΩ
uq
fvvpvuuvu
LqHvLpHu EE
ν
0 div
grad)grad( 2
=−=+⋅+∇−
u
fpuuuν
Weak Formulation
16
,νULR ≡ Reynolds number, characterizes relative contributions
of convection and diffusion
L = characteristic length scale in boundarye.g. length of inflow boundary
= x/L in normalized domain
U = normalization for velocity ue.g. u=Uu*, where ||u*||=1
x
Conventions of Notation
17
Reference Problems
2. Driven cavity flow
u1=u2=0, except u1=1 at top
1. Flow over a backward facingstep
u1=u2=0, exceptu1=1-y2 at inflow ν ∂u1/∂x=p∂u2/∂x=0 at outflow
18
Linearization
++
uu
ppup
δδ update compute , (iterate) estimateGiven
Consider steady problem
0 div
grad)grad( 2
=−=+⋅+∇−
u
fpuuuν
uu
puuufpuuu
div div
) grad)grad(( grad)grad( 22
=−+⋅+∇−−=+⋅+∇−
δνδδδν
Linearization
1. Picard iteration
=
⋅+∇−gf
puu
ˆ
ˆ
0div-grad )grad( 2
δδν
Oseen equations
19
Linearization
uu
puuuf
puuuuu
div div
) grad)grad((
grad)grad)(()grad( 2
2
=−+⋅+∇−−=
+⋅+⋅+∇−
δν
δδδδν
2. Newton’s method : substitute into N.S. equations,
throw out quadratic term
∂∂∂∂−∂∂+⋅+∇−
∂∂+⋅+∇−
yx
yyuuxu
xyuxuu
//
/)()grad(2 )(
/)()()grad(2
22
11
ν
ν
++
uupp
δδ
=
gf
f
puu
ˆ2ˆ1ˆ
2
1
δδ
20
Convergence
Picard iteration: Sufficient conditions for convergence are the same as sufficient conditions for uniquenessof steady solution:(*) ν > (c2 ||f||-1)1/2/c
c1, c2 continuity, coercivity constants
Global convergenceRate: linear
Newton’s method: Convergent only for large enough ν,typically larger than (*) aboveGuaranteed convergent only for close enoughstarting values.Rate: quadratic
21
Iterative Solution of Linearized System
=
gf
pu
BBF T
0
Analogue of Stokes strategy: preconditioner:
SMF0
0
Same analysis → BF-1BTp=µ MSp, µ=λ(λ-1)⇒ seek approximation MS to Schur complement
Under mapping µ a λ=1± (1+4µ)1/2,eigenvalues λ are clustered in two regions,one on each side of imaginary axis
Suppose MS≈ BF-1BT so that eigenvalues of
BF-1BTp = µ MSp
are tightly clustered.
22
Variant Form of Preconditioner
=
gf
pu
BBF T
0
Observations: • Symmetry is important for Stokes solver
MINRES: optimal with fixed cost per step⇒ need block diagonal preconditioner
• Can also compute in the right norm
• For Navier-Stokes: don’t have symmetryneed Krylov subspace method for nonsymmetricmatrices (e.g. GMRES)
− S
T
MBF
0
Change block diagonal preconditioner
SMF0
0to block triangular
23
Preliminary Analysis of this Variant
−=
pu
MBF
pu
BBF
S
TT
00µGeneralized eigenvalue problem
Fu+BTp = µ (Fu+BTp) , µ ≠ 1 ⇒ u= -F-1BTp Bu = -µ QSp BF-1BTp=µ MSp
µ ⊂ 1 ∪
TheoremFor preconditioned GMRES iteration, let
p0 be arbitrary and u0 = F-1(f-BTp0) (⇒ r0=(0,w0)) (uk,pk)T be generated with block triangular preconditioner,(uk,pk)D be generated with block diagonal preconditioner.
Then (u2k,p2k)D = (u2k+1,p2k+1)D = (uk,pk)T .
24
Computational Requirements
Each step of a Krylov subspace method requires matrix-vectorproduct y=AM-1 x
For preconditioning operation:
Solve Ms r = -q, then solve F w = v-BTr
The only difference from block diagonal solve:matrix-vector product BTr (negligible)
For second step: convection-diffusion solve: can be approximated, e.g. with multigrid
For first step: something new needed: MS
−=
−
qv
MBF
rw
S
T 1
0 compute
25
Approximation for the Schur Complement (I)Suppose the gradient and convection-diffusion operators approximately commute (w=u(m)):
∇∇⋅+∇−≈∇⋅+∇−∇ up ww )()( 22 ννRequire pressure convection-diffusion operator
Discrete analogue:
ppT
uT
Tuupp
Tu
QFBBQBBF
BQFQFQBQ
111
1111
−−−
−−−−
=⇒
=
pA
In practice: don’t have equality, instead pppS QFAM 1−≡
Nomenclature: Pressure Convection-Diffusion Preconditioner
26
Approximation for the Schur Complement (I)
pppS QFAM 1−≡
Requirements: Poisson solve 1−pA
Mass matrix solve 1−pQ
+ Convection-diffusion solve 1−F
1for −SM
Pressure Convection-Diffusion Preconditioner
27
Approximation for the Schur Complement (II)
pww )grad(gradgrad)grad( 22 ⋅+∇−−⋅+∇− ννTry to make commutator
small. Viewed as a discrete operator, norm is
u
h
Qpu
Tu
Tuu
p
hpp
pFQBQBQFQ
pww
)])(())([(sup
])grad(gradgrad)grad[(sup
1111
22
−−−− −=
⋅+∇−−⋅+∇− νν
Make small by minimizing columns of Fp in least squares sense.
Result: )()( 1111 Tuu
Tupp BFQBQBBQQF −−−−=
)())(()( 11111111 Tu
Tuu
Tupp
Tu
T BBQBFQBQBBQQFBBQBBF −−−−−−−− =≈
28
Approximation for the Schur Complement (II)
11111111 ))(()()( −−−−−−−− ≈ Tu
Tuu
Tu
T BBMBFMBMBBMBBF
Nomenclature: Least-Squares Commutator Preconditioner
• Fully automated: does not require operator defined pressure space
• Takes properties of F into account
• Requires convection-diffusion solve and two Poisson solves
+∇⋅+∇−+∇⋅+∇−=
22
1
212
wwwwww
Fν
νFor Newton nonlinear iteration:
29
For Problems Arising from Stabilized Elements
+−
=
− −− )(0
011 CBBF
BF
IBF
I
CB
BFT
TT
⇒
=
+−
− −
−
− IBF
I
CBBF
BF
CB
BFT
TT
1
1
1
0
)(0
1
0
−
− S
TF
MBM
≈
Shows what is needed for stabilized discretization:
MS≈ BF-1BT + C
The ideas discussed above can be adapted to this case.
30
Recapitulating: Two ideas under consideration
Preconditioners
=
− 0
f
p
u
CB
BF T
1. Pressure convection-diffusion(Fp): MS = Ap Fp-1Qp
Requirements: Poisson solve, mass matrix solve, Convection-diffusion on pressure spaceDecisions on boundary conditions
2. Lst-sqrs commutator: QS = (BQ-1BT) (BQ-1FQ-1BT)-1 (Bq-1BT) Requirements: Two Poisson solves
− S
TF
MBM
0for
Requirement common to both: approximation of action of F-1
Overarching philosophy: subsidiary operations Poisson solve convection-diffusion solve are manageable
31
ElaboratingOverarching philosophy: subsidiary operations
Poisson solve convection-diffusion solve
To approximate the action of F-1, Ap-1:
apply a few steps of multigrid to
convection-diffusion equation
Poisson equation
are manageable
32
Reference Problems
2. Driven cavity flow
u1=u2=0, except u1=1 at top
1. Flow over a backward facingstep
u1=u2=0, exceptu1=1-y2 at inflow ν ∂u1/∂x=p∂u2/∂x=0 at outflow
33
Performance
StepNewton system
CavityOseen system
34
Performancewith Multigrid
StepNewton system
CavityOseen system
35
Technical Issues
1. For multigrid used to generate MF-1 (approximately solve
Fv=w), need streamline upwinding:
Approximate the action of F-1 with multigrid applied toto the system matrix F+S where S is the streamline-upwindoperator derived from (u. grad)
=
⋅+∇−gf
puu
ˆ
ˆ
0div-grad )grad( 2
δδν
F
36
Technical Issues
∂∂∂∂−∂∂+⋅+∇−
∂∂+⋅+∇−
yx
yyuuxu
xyuxuu
//
/)()grad(2 )(
/)()()grad(2
22
11
ν
ν
F
2. To generate MF-1 (approximately solve Fv=w) for Newton’smethod:
First approximate F with F from Oseen operator.
Then approximate the action of (F)-1 with multigridas above
+⋅+∇⋅+∇−
yx
y
uuu
uu
)()grad( )(
)()grad(
22
2
12
νν
^
^
37
Technical Issues
3. For enclosed flow, one.by deficient -rank are 0
and
BBFB
TT
Null vectors are p 1 and , respectively.
10
properly. worksGMRES c.
defined.- well
is 00
system onedpreconditi The b.
.0)1,( ,consistent is 0
system The a.
that establish toNeed
1−
−
=
=
S
TT
T
MBF
BBF
ggf
pu
BBF
38
Technical Issues
For issue 3c:
Theorem: If Fx=b is a consistent system where F is rank deficient,then the GMRES method will compute a solution withoutbreaking down iffnull(F) null(FT)=0.
Apply to
For issue 3b: need to show that subsidiary operations such as pressure Poisson solve Apq=s are consistent.
Issue that arises here: multigrid for Poisson equation with Neumannboundary conditions.
1
00
−
−
S
TT
MBF
BBF
39
Picard Iteration vs. Newton’s Method
SlowerMore inner iterations
Disadvantages
More robust, fewer inner iterations
Faster convergence
Advantages
PicardNewton
Our experience: (# Newton steps) / (# Picard steps) < ½(avg. # inner steps (Newton) /
avg. # inner steps (Picard) ≈ 2
40
Software
Experimental results Graphics
Incompressible Flow & Iterative Solver Software(IFISS) Package
for both talks this weekend from
41
IFISS
MATLAB Toolbox for discretizing and solving four problemsarising in models of incompressible flow Authors: HE, A. Ramage and D. Silvester
1. The diffusion (Poisson) equation -∆ u=f
2. The convection-diffusion equation
3. The Stokes equations
4. The Navier-Stokes equations
42
Features of IFISS
For each problem:
1. Several choices of finite element discretization(bilinear orbiquadratic)
2. Several domains (square, L-shaped, step)
3. Error estimates
4. Graphical displays
5. Access to data and problem structure
6. Iterative solution by preconditioned Krylov subspace methods
43
Preconditioned Krylov Subspace Methods
For the diffusion equation:
CGMINRES
+ ICCGMultigrid
For the convection-diffusion equation:GMRESBiCGSTAB(l)
+ ILUMultigrid
For the Stokes equations:
MINRES + Block preconditioningwith inner multigrid
For the Navier Stokes equations:
GMRESBiCGSTAB(l)
+Pressure convection-diffusionLeast squares commutatorwith inner multigrid
44
Last Example: Backward Facing Step,R=100
Least squares commutator preconditioner is much more effectivein this caseBiCGSTAB(2) performance is erratic