You are on page 1of 9

Computational Fluid Dynamics

Computational Fluid Dynamics



http://www.nd.edu/~gtryggva/CFD-Course/! Outline!

Solution Methods for Parabolic Equations!


One-Dimensional Problems!
Numerical Methods for! •  Explicit, implicit, Crank-Nicolson!
•  Accuracy, stability!
Parabolic Equations! •  Various schemes!

Multi-Dimensional Problems!
•  Alternating Direction Implicit (ADI)!
•  Approximate Factorization of Crank-Nicolson!

Splitting!
Grétar Tryggvason!
Spring 2011!

Computational Fluid Dynamics


Computational Fluid Dynamics

Consider the diffusion equation!

∂f ∂2 f
=α 2 ; t > 0, a < x < b
Numerical Methods for! ∂t ∂x
which is a parabolic equation requiring!
One-Dimensional Heat
f ( x,0) = f 0 ( x) Initial Condition!
Equations! and!
f (a, t ) = φ a (t ); f (b, t ) = φb (t ) Boundary Condition!
(Dirichlet)!
or!
∂f ∂f
(a, t ) = ϕ a (t ); (b, t ) = ϕ b (t ) Boundary Condition!
∂x ∂x (Neumann)!

Computational Fluid Dynamics


Computational Fluid Dynamics

Explicit Method: FTCS - 1!

Explicit: FTCS! n
∂2 f ⎞ f jn+1 − 2 f jn + f jn−1
Parabolic equations can be viewed as the limit of a =
hyperbolic equation with two characteristics as the ⎛ ∂f ⎞
n
⎛ ∂2 f ⎞
n
∂ x 2 ⎟⎠ j h2
=α⎜ 2 ⎟
signal speed goes to infinity! ⎝⎜ ∂t ⎠⎟ ⎝ ∂x ⎠ n
j j
∂f⎞ f jn+1 − f jn
=
∂ t ⎟⎠ j Δt
f jn +1 − f jn f jn+1 − 2 f jn + f jn−1
t! =α
Δt h2
α Δt
Increasing (
f jn +1 = f jn + 2 f jn+1 − 2 f jn + f jn−1
h
)
signal speed!
n+1

x!
n

j-1 j j+1

Computational Fluid Dynamics
Computational Fluid Dynamics

Explicit Method: FTCS - 2! Explicit Method: FTCS - 3!

Modified Equation! Stability: von Neumann Analysis!

∂f ∂ f αh2 2

−α 2 = (1 − 6r ) f xxxx + O(Δt 2 , h 2 Δt , h 4 ) f xxxxxx ε n +1 αΔt h


∂t ∂x 12 = 1 − 4 2 sin 2 k ⎡⎣ G = 1 − 4r sin 2 (β / 2) ⎤⎦
εn h 2
αΔt
where! r=
h2 αΔt
−1 < 1− 4 <1
- Accuracy ! O ( Δt , h )
2 h2
αΔt 1
- No odd derivatives; dissipative! 0≤ < Fourier Condition!
h2 2

Computational Fluid Dynamics


Computational Fluid Dynamics

Explicit Method: FTCS - 4! Implicit Method - 1!

Domain of Dependence for Explicit Scheme! Implicit Method: Backward Euler!


t
Boundary effect is not ! f jn +1 − f jn f jn++11 − 2 f jn +1 + f jn−+11
felt at P for many time ! =α
P steps! Δt h2
Δt
This may result in! −rf jn+1+1 + ( 2r + 1) f jn +1 − rf jn−1+1 = f jn ( r = αΔt / h )
2

h unphysical solution behavior!


BC! BC! Tri-diagonal matrix system!
In the limit of Δt and Δx
going to zero, the
computational domain n+1

contains the physical
domain of dependence n

since Δt ~ Δx2 for stability !
x j-1 j j+1

Initial Data!

Computational Fluid Dynamics


Computational Fluid Dynamics

Implicit Method - 2! Crank-Nicolson - 1!

Modified Equation! Crank-Nicolson Method (1947)!


∂f ∂2 f α h 2 f jn +1 − f jn α ⎛ f j +1 − 2 f j + f j −1 f n − 2 f jn + f jn−1 ⎞
n +1 n +1 n +1
−α 2 = (1 + 6r) fxxxx + O(Δt 2 , h 2 Δt, h 4 ) fxxxxxx ⎜ ⎟
∂t ∂x 12 = ⎜ + j +1 ⎟
Δt 2⎝ h 2
h2 ⎠
- The + sign suggests that implicit method may be!
less accurate than a carefully implemented explicit! −rf n +1
j +1 + 2 ( r + 1) f jn +1 − rf jn−1+1 = rf jn+1 − 2 ( r − 1) f jn + rf jn−1
method.!
Tri-diagonal matrix system!
Amplification Factor (von Neumann analysis)!

G = [1 + 2r(1 − cos β )]
−1 n+1

n

Unconditionally stable! j-1 j j+1

Computational Fluid Dynamics
Computational Fluid Dynamics

Crank-Nicolson - 2! Combined Method A - 1!

Modified Equation! Generalization!


∂f ∂ 2 f αh 2 ⎡1 1 ⎤ f n +1
− f jn ⎛ f n +1 − 2 f jn +1 + f jn−+11 f n − 2 f jn + f jn−1 ⎞
−α 2 = f xxxx + ⎢ α 3 Δt 2 + αh 4 ⎥ f xxxxxx j
= α ⎜⎜θ j +1 + (1 − θ ) j +1 ⎟
∂t ∂x 12 ⎣12 360 ⎦ Δt h 2
h2 ⎟
⎝ ⎠
- Second-order accuracy! O ( Δt 2 , h 2 )
⎧0 Explicit (FTCS)

Amplification Factor (von Neumann analysis)! θ = ⎨1 Implicit
⎪1/2 − Nicolson
1 − r (1 − cos β ) ⎩ Crank
G=
1 + r (1 − cos β ) n+1
×θ
n
× (1 − θ )
Unconditionally stable!
j-1 j j+1

Computational Fluid Dynamics


Computational Fluid Dynamics

Combined Method B - 1! Combined Method B - 2!

Generalized Three-Time-Level Implicit Scheme:! Modified Equation:!


! ! !Richtmyer and Morton (1967)!
⎡ ⎛ 1⎞ αh 2 ⎤
f t − αf xx = ⎢− ⎜θ − ⎟α 2 Δt + f xxxx + O(Δt 2 ) + 
f jn +1 − f jn f jn − f jn −1 f jn++11 − 2 f jn +1 + f jn−+11 ⎣ ⎝ 2⎠ 12 ⎥⎦
(1 + θ ) −θ =α
Δt Δt h2
⎧0 Implicit
θ =⎨ Special Cases:!
⎩1/2 Three - level fully implicit
1
j-1 j j+1
θ= ⇒ O(Δt 2 , h 2 )
n+1
2
× (1 + θ ) 1 1
n
θ= +
×θ ⇒ O(Δt 2 , h 4 )
n-1
2 12r

Computational Fluid Dynamics


Computational Fluid Dynamics

Richardson Method! DuFort-Frankel - 1!

Richardsonʼs Method! The Richardson method can be made stable by !

Similar to Leapfrog!
n
splitting f j by time average ! f jn +1 + f jn −1 / 2( )
f jn +1 − f jn −1 f jn+1 − f jn +1 − f jn −1 + f jn−1
f jn +1 − f jn −1 f jn+1 − 2 f jn + f jn−1 =α
=α 2Δt h2
2Δt h 2

f jn +1 (1 + 2r ) = f jn −1 + 2r (f jn+1 − f jn −1 + f jn−1 )
O(Δt 2 , h 2 ) but unconditionally unstable!!
n+1

n+1

n

n

n-1

n-1
j-1 j j+1

j-1 j j+1

Computational Fluid Dynamics
Computational Fluid Dynamics

DuFort-Frankel - 2! Parabolic Equation - Summary!

Modified Equation! f t = αf xx

⎡1 Δt ⎤ 2
FTCS!
f t − αf xx = ⎢ αh 2 − α 3 2 ⎥ f xxxx f jn +1 − f jn

f jn+1 − 2 f jn + f jn−1 αh 2
(1 − 6r )f xxxx Stable for!
1
⎣12 h ⎦ Δt h2 12 r≤
2
⎡ 1 1 Δt 4 ⎤ BTCS!
+⎢ αh 4 − α 3 Δt 2 + 2α 5 4 ⎥ f xxxxxx f jn +1 − f jn

f jn++11 − 2 f jn +1 + f jn−+11 αh 2
(1 + 6r )f xxxx Unconditionally!
⎣ 360 3 h ⎦ Δt h2 12
Stable!
Conditionally consistent! Crank-Nicolson! f jn +1 − f jn α
Δt
=
2h 2 ⎣
(
⎡ f jn+1+1 − 2 f jn +1 + f jn−1+1 ) αh 2
f xxxx +
α 3 Δt 2
f xxxxxx
Unconditionally!
Amplification factor ! (
+ f jn+1 − 2 f jn + f jn−1 ⎤⎦ )
12 12 Stable!

2r cos β ± 1 − 4r 2 sin 2 β Richardson!


G= Unconditionally ! f jn +1 − f jn −1

f jn+1 − 2 f jn + f jn−1
O(Δt 2 , h 2 )
Unconditionally!
1 + 2r stable! 2Δt h2 Unstable!

Computational Fluid Dynamics


Computational Fluid Dynamics

Parabolic Equation - Summary!

f t = αf xx

DuFort-Frankel! Unconditionally!
f jn +1 − f jn −1
2Δt

f jn+1 − f jn +1 − f jn −1 + f jn−1
h 2
αh 2
12
(1 − 12r 2 )f xxxx
Stable,!
Conditionally! Numerical Methods for!
Consistent!
3-Level Implicit! 3 f jn +1 − 4 f jn + f jn −1
=
Multi-Dimensional Heat
2Δt αh 2 Unconditionally!
f n +1 − 2 f jn +1 + f jn−+11
α j +1
h2
12
f xxxx
Stable! Equations!

And others!!

Computational Fluid Dynamics


Computational Fluid Dynamics

Explicit Method - 1!

Consider a 2-D heat equation! 2-D heat equation!

∂f ⎛∂ f ∂ f ⎞ 2 2 ∂f ⎛ ∂2 f ∂2 f ⎞
= α ⎜⎜ 2 + 2 ⎟⎟ = α ⎜⎜ 2 + 2 ⎟⎟
∂t ∂t ⎝ ∂x ∂y ⎠
⎝ ∂x ∂y ⎠
Applying forward Euler scheme:!
Two-dimensional grid! ⎛ f i +n1, j − 2 f i ,nj + f i −n1, j f i ,nj +1 − 2 f i ,nj + f i ,nj −1 ⎞
f i ,nj+1 − f i ,nj
= α⎜ + ⎟
Δt ⎜ Δx 2 Δy 2 ⎟
j+1! ⎝ ⎠
j! If! Δx = Δy = h

f i ,nj+1 − f i ,nj α n
j-1!
i-1! i! i+1! Δt
=
h2
(
f i +1, j + f i −n1, j + f i ,nj +1 + f i ,nj −1 − 4 f i ,nj )
Computational Fluid Dynamics
Computational Fluid Dynamics

Explicit Method - 2! Explicit Method - 3!

In matrix form! Von Neumann Analysis! ε j = ε e e


n n ikx imy

αΔt ikh −ikh imh −imh


(e + e + e + e − 4)ε n
⎡ f1,1n+1 ⎤ ⎡ f1,1n ⎤ ⎡ fn ⎤
⎢ ⎥ ⎢ ⎥ ⎢ 1,1 ⎥ ε n +1 = ε n +
⎢ f1,2n+1 ⎥ ⎢ f1,2n ⎥ ⎡ −4 1 0 0  1 0    ⎤ ⎢ f1,2n ⎥ h2
⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥
1 −4 1 0  0 1    ⎥ ⎢
⎢  ⎥ ⎢  ⎥ ⎢  ⎥ ε n +1 αΔt
⎢ n+1 ⎥ ⎢
f1, J ⎥ ⎢ f1,nJ
⎥ ⎢ 0 1 −4 1   0 1   ⎥ ⎢ n
⎥ ⎢ f1, J
⎥ = 1+ 2 (2cos kh + 2cos mh − 4 )
⎢ ⎥ ⎢
⎢  ⎥⎢
⎥ εn h
⎢ n+1 ⎥ ⎢ ⎥ ⎥
⎢ f 2,1 n
⎥ = ⎢ f 2,1 ⎥+ αΔt ⎢  f
⎥ ⎢ 2,1
n
⎥ 4αΔt ⎛ kh mh ⎞
⎢ n+1 ⎥ ⎢ fn ⎥ h2 ⎢ 1 0 ⎥⎢ n ⎥ = 1 − 2 ⎜ sin 2 + sin 2 ⎟

f 2,2
⎥ ⎢ 2,2 ⎥ ⎢ f
⎥ ⎢ 2,2 ⎥ h ⎝ 2 2 ⎠
⎢ ⎢ 0 1 ⎥⎢ 
 ⎥ ⎢  ⎥ ⎥
⎢ ⎥ ⎢ ⎥ ⎢ 0 0 1 ⎥⎢ ⎥ Worst case!
⎢  ⎥ ⎢  ⎥ ⎢ ⎥⎢  ⎥
⎢ f In+1 ⎥ ⎢ f In, J −1 ⎥ ⎢ ⎥⎢ f n ⎥ 8αΔt αΔt 1
⎢ , J −1
⎥ ⎢ ⎥ ⎢⎣ 0 1 −4 ⎥⎦ ⎢ I , J −1 ⎥ −1 ≤ 1− ≤1 ≤


f In+1
,J
⎥ ⎢ f In, J
⎦ ⎣


⎢ f In, J



h2 h2 4

Computational Fluid Dynamics


Computational Fluid Dynamics

Stability!

Stability limits depend on the dimension of the problems!

Δtα 1
= One-dimensional flow!
h2 2
Δtα 1
= Two-dimensional flow!
Implicit time integration!
h2 4
Δtα 1
= Three-dimensional flow!
h2 6

Different numerical algorithms usually have


different stability limits!

Computational Fluid Dynamics


Computational Fluid Dynamics

Implicit Methods! Implicit Methods!

Recall forward in time method!


Isolate the new fi,j and solve by iteration!
⎛ Δtα ⎞ n
f n+1 = f n + ⎜ 2 ⎟ f i+1,
⎝ h ⎠ j
+ f i−1,
n
j(+ f i,nj −1 + f i,nj +1 − 4 f i,nj ) 1
(
A( f i+1, j + f i−1, j + f i, j−1 + f i, j +1 ) + f i, j )
i, j i, j

f in, j+1 = n +1 n +1 n +1 n +1 n

Evaluate the spatial derivatives at the new 1+ 4 A


time (n+1), instead of at n!
The implicit method is unconditionally stable, but it is
⎛ Δtα ⎞ n+1
f n+1 = f n + ⎜ 2 ⎟ f i+1,
i, j i, j
⎝ h ⎠ j
+ f i−1,
n+1
(j
+ f i,n+1
j −1
+ f i,n+1
j +1
− 4 f i,n+1
j ) necessary to solve a system of linear equations at
each time step. Often, the time step must be taken to
be small due to accuracy requirements and an explicit
This gives a set of linear equations for the
method is competitive.!
new temperatures:!
(1 + 4 A) f n+1 − A f i+1,
n+1
i, j j (
+ f i−1,
n+1
j
+ f i,n+1
j −1
+ f i,n+1
j +1)= fn
i, j

Known source term!


Computational Fluid Dynamics
Computational Fluid Dynamics

Implicit Methods! Crank-Nicolson!

Crank-Nicolson Method for 2-D Heat Equation!


Second order accuracy in time can be obtained by
using the Crank-Nicolson method! f n +1 − f n α ⎛ ∂ 2 f n +1 ∂ 2 f n +1 ∂ 2 f n ∂ 2 f n ⎞
= ⎜⎜ + + + ⎟
Δt 2 ⎝ ∂x 2 ∂y 2 ∂x 2 ∂y 2 ⎟⎠
n+1 If! Δx = Δy = h
αΔt n +1
f i ,nj+1 = f i ,nj +
2h 2
(fi+1, j + fi−n1+,1j + fi,nj++11 + fi,nj+−11 − 4 fi,nj+1 )
αΔt
n + 2 (f i +n1, j + f i −n1, j + f i ,nj +1 + f i ,nj −1 − 4 f i ,nj )
j+1 2h

i-1 j
The matrix equation is expensive to solve!
i
i+1 j-1

Computational Fluid Dynamics


Computational Fluid Dynamics

Expensive to solve matrix equations. ! Alternating Direction Implicit (ADI)!

Can larger time-step be achieved without having solve the Fractional Step:! (Δx = Δy = h )
matrix equation resulting from the two-dimensional
system?! Step 1:!
αΔt
2h
[
f n +1/ 2 − f n = 2 ( f i+1,
n +1/ 2 n +1/ 2
j − 2 f i, j
n +1/ 2
+ f i−1, n n n
]
j ) + ( f i, j +1 − 2 f i, j + f i, j−1 )
The break through came with the Alternation-Direction-
Step 2:!
Implicit (ADI) method (Peaceman & Rachford-mid1950ʼs)! αΔt
2h
[
f n +1 − f n +1/ 2 = 2 ( f i+1,
n +1/ 2 n +1/ 2
j − 2 f i, j j ) + ( f i, j +1 − 2 f i, j + f i, j−1 )
n +1/ 2
+ f i−1, n +1 n +1 n +1
]
ADI consists of first treating one row implicitly with
backward Euler and then reversing roles and treating the Combining the two becomes equivalent to:!
other by backwards Euler. ! αΔt ⎡ ∂ 2 f n +1/ 2 1 ⎛ ∂ 2 f n +1 ∂ 2 f n ⎞⎤
f n +1 − f n = ⎢ + ⎜⎜ + ⎟⎥
Peaceman, D., and Rachford, M. (1955). The numerical solution of parabolic and
2 ⎣ ∂x 2 2 ⎝ ∂y 2 ∂y 2 ⎟⎠⎦
elliptic differential equations, J. SIAM 3, 28-41!
Midpoint! Trapisodial!

Computational Fluid Dynamics


Computational Fluid Dynamics

Computational Molecules for the ADI Method!


Instead of solving one set of linear equations for the
two-dimensional system, solve 1D equations for
n+1 each grid line.!

The directions can be alternated to prevent any bias!


n+1/2

n
j+1
i-1 j
i
i+1 j-1
Computational Fluid Dynamics
Computational Fluid Dynamics

In matrix form, for each row! ADI Method is O Δt 2 , h 2 ( ) accurate !

Stability Analysis:! ε j = ε e e
n n ikx imy
⎡ f n+1/ 2 ⎤ ⎡ fn ⎤ ⎡ f n+1/ 2 ⎤
⎢ i,1 ⎥ ⎢ i,1 ⎥ ⎡ −2 1  0 ⎤ ⎢ i,1 ⎥ αΔt n +1/2 ikh
⎢ f n+1/ 2 ⎥ ⎢ fn ⎥ αΔt ⎢ ⎥ ⎢ f n+1/ 2
1 −2   ⎥ ⎥ ε n +1/2 = ε n +
h2 ⎣
⎡ε ( e − 2 + e−ikh ) + ε n ( eimh − 2 + e−imh )⎤⎦
⎢ i,2 ⎥ = ⎢ i,2 ⎥+ 2 ⎢ ⎢ i,2 ⎥ + source
⎢  ⎥ ⎢  ⎥ h ⎢    1 ⎥⎢  ⎥ αΔt 2 kh
⎢ n+1/ 2 ⎥ ⎢ n ⎥ ⎢


0  1 −2 ⎦ ⎢ f n+1/ 2 ⎥ ε n +1/2 1 − 2 h 2 sin 2
⎢⎣ f i, N ⎥⎦ ⎢⎣ f i, N ⎥⎦ ⎢⎣ i, N ⎥⎦ =
αΔt
εn 1 + 2 2 sin 2
mh
h 2
This equation is easily solved by forward elimination Similarly, !
αΔt 2 mh
ε n +1 1 − 2 h 2 sin 2
and back-substitution!
=
ε n +1/2 αΔt kh
1 + 2 2 sin 2
h 2

Computational Fluid Dynamics


Computational Fluid Dynamics

Combining !
Implicit methods for parabolic equations!
⎛ αΔt 2 kh ⎞⎛ αΔt 2 mh ⎞
εn +1 ⎜ 1 − 2 2 sin ⎟⎜ 1 − 2 2 sin ⎟ • Allow much larger time step (but must be
=⎜ h 2 ⎟⎜ h 2 ⎟ <1
αΔ αΔ balanced against accuracy!)!
εn ⎜1+ 2 t
sin 2
mh ⎟⎜ 1 + 2 t
sin 2
kh ⎟
⎜ ⎟⎜ ⎟
⎝ h2 2 ⎠⎝ h2 2 ⎠ • Preserve the parabolic nature of the equation!

Unconditionally stable! ! But, require the solution of a linear set of


equations and are therefore much more
The 3-D version does not have the same desirable expensive that explicit methods!
stability properties. However, it is possible to generate
similar methods for 3D problems! ADI provides a way to convert multidimensional
problems into a series of 1D problems!

Computational Fluid Dynamics


Computational Fluid Dynamics

Approximate Factorization - 1!
1
Define δ! xx ( )= ⎡(
⎣ )i −1, j − 2 ( )i, j + ( )i +1, j ⎤⎦
Δx 2
1
δ yy ( )= 2 ⎡(
⎣ )i, j −1 − 2 ( )i, j + ( )i, j +1 ⎤⎦
Δy
Approximate The Crank-Nicolson for heat equation becomes !
f n +1 − f n α α
factorization! Δt
( ) ( )
= δ xx f n +1 + f n + δ yy f n +1 + f n + O(Δt 2 , Δx 2 , Δy 2 )
2 2
Splitting! which can be rewritten as !
⎛ αΔt αΔt ⎞ n +1 ⎛ αΔt αΔt ⎞ n
1− δ xx − δ yy ⎟ f = ⎜ 1 + δ xx + δ yy ⎟ f
⎝⎜ 2 2 ⎠ ⎝ 2 2 ⎠
+ΔtO(Δt 2 , Δx 2 , Δy 2 )
Computational Fluid Dynamics
Computational Fluid Dynamics

Approximate Factorization - 2! Approximate Factorization - 3!

Factoring each side ! The ADI method can be written as !


⎛ αΔt ⎞ ⎛ αΔt ⎞ n +1 α Δt ⎛ αΔt ⎞ n +1/2 ⎛ αΔt ⎞ n
2 2
1− δ xx ⎟ ⎜ 1 − δ yy ⎟ f − δ xxδ yy f n +1 = ⎜⎝ 1 − δ xx ⎟ f = ⎜1 + δ yy ⎟ f
⎝⎜ 2 ⎠ ⎝ 2 ⎠ 4 2 ⎠ ⎝ 2 ⎠
⎛ αΔt ⎞ ⎛ αΔt ⎞ n α Δt
2 2
1+ δ xx ⎟ ⎜ 1 + δ yy ⎟ f − δ xxδ yy f n ⎛ αΔt ⎞ n +1 ⎛ αΔt ⎞ n +1/2
⎝⎜ 2 ⎠⎝ 2 ⎠ 4 ⎜⎝ 1 − δ yy ⎟ f = ⎜ 1 +
⎠ ⎝
δ xx ⎟ f

2 2
+ΔtO(Δt 2 , Δx 2 , Δy 2 )
or !
Eliminating fn+1/2 !
⎛ αΔt ⎞ ⎛ αΔt ⎞ n +1 ⎛ αΔt ⎞ ⎛ αΔt ⎞ n
⎜⎝ 1 − δ xx ⎟ ⎜ 1 − δ yy ⎟ f = ⎜ 1 + δ xx ⎟ ⎜ 1 + δ yy ⎟ f
2 ⎠⎝ 2 ⎠ ⎝ 2 ⎠⎝ 2 ⎠ ⎛ αΔt ⎞ ⎛ αΔt ⎞ n +1 ⎛ αΔt ⎞ ⎛ αΔt ⎞ n +1
⎜⎝ 1 − δ yy ⎟ ⎜ 1 − δ xx ⎟ f = ⎜ 1 + δ yy ⎟ ⎜ 1 + δ xx ⎟ f
α 2 Δt 2 2 ⎠⎝ 2 ⎠ ⎝ 2 ⎠⎝ 2 ⎠
+ δ xxδ yy ( f n +1 − f n ) + ΔtO(Δt 2 , Δx 2 , Δy 2 )
4
Crank-Nicolson!

Computational Fluid Dynamics


Computational Fluid Dynamics

Approximate Factorization - 4! Approximate Factorization - 5!

The Peaceman-Rachford methods does not have


Up to a factor:!
the same stability properties in 3D as in 2D. A
method with similar properties is:!
⎛ αΔt ⎞ 2 ⎛ α ⎞2 3 ∂f
⎟ δyyδxx ( f − f ) ≈ ⎜ ⎟ Δt δxxδyy ⎛ αΔt ⎞ n +1* ⎡ αΔt
n +1
= O(Δt 3 )
⎜ ( ⎤
)
n

⎝ 2 ⎠ ⎝2⎠ ∂t ⎜⎝ 1 − δ xx ⎟ f = ⎢1 + δ xx + 2δ yy + 2δ zz ⎥ f n
2 ⎠ ⎣ 2 ⎦
⎛ αΔt ⎞ n +1** αΔt
1− δ yy ⎟ f = f n +1* − δ yy f n
⎝⎜
ADI is an approximate factorization of the
2 ⎠ 2
Crank-Nicolson method!
⎛ αΔt ⎞ n +1 αΔt
1− δ zz ⎟ f = f n +1** − δ zz f n
⎝⎜ 2 ⎠ 2

Several other splitting methods have been proposed


in the literature.!

Computational Fluid Dynamics


Computational Fluid Dynamics

Approximate Factorization - 6!

Similar ideas can be used for time splitting:!


fi,nj+1/2 = (1 + αΔtδ xx ) fi,nj Why splitting? !

f n +1
i, j (
= 1 + αΔtδ yy f ) n +1/2
i, j
1.  Stability limits of 1-D case apply.!

Eliminate the half step:! 2.  Different Δt can be used in x and y directions.!
f n +1
i, j ( )
= 1 + αΔtδ yy (1 + αΔtδ xx ) f n
i, j

Which is equivalent to the standard FTC method,


except for the! 2 2
α Δt δ yyδ xx fi, j
n

term, which is higher order.!


Computational Fluid Dynamics
Computational Fluid Dynamics

Backward Euler!

Implicit time fi,nj+1 − fi,nj


= α∇ 2h fi,nj+1
Δt
marching by fast Rearrange!
fi,nj+1 fi,nj
elliptic solvers! ∇ 2h fi,nj+1 −
αΔt
=−
αΔt
or!
∇ 2h fi,nj+1 − λ fi,nj+1 = S

Can be solved by elliptic solvers!

Computational Fluid Dynamics



Outline!

Solution Methods for Parabolic Equations!


One-Dimensional Problems!
•  Explicit, implicit, Crank-Nicolson!
•  Accuracy, stability!
•  Various schemes!

Multi-Dimensional Problems!
•  Alternating Direction Implicit (ADI)!
•  Approximate Factorization of Crank-Nicolson!

Splitting!

You might also like