12 Implicit Spatial Discretization for Advection-Diffusion-Reaction Equation Kundan Kumar 10-Dec-2008 1/35 1/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Introduction Applications of Advection-Diffusion Reaction Equations Chemical Vapor Deposition 2/35 2/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Introduction Setting: • Advection-Diffusion-Reaction Equation • φ t + uφ x = ǫφ xx + s ( x, t ) , • Advection Velocity : u • Diffusion Coefficient : ǫ • Source term : s ( x, t ) s ( x, t ) = b 2 ǫ cos( b ( x − ut )) . 3/35 3/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Introduction Setting: • Exact Solution: φ = cos( b ( x − ut )) + exp( − a 2 ǫt ) cos( a ( x − ut )) . • Dirichlet Boundary Conditions. • Initial Condition, φ ( x, t ) at t = 0 . 4/35 4/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Contents 1 Discretization 6 1.1 Order Condition . . . . . . . . . . . . . . . . . . . . . . . . 8 2 Examples 10 3 Stability 16 4 Time Integration Aspect 18 5 Numerical Computations 19 6 Conclusion 35 5/35 5/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 1. Discretization φ t + uφ x = ǫφ xx + s ( x, t ) Discretization: 1 1 � � β k w ′ j + k ( t ) = h − 2 α k w j + k ( t ) k = − 1 k = − 1 1 � + β k g j + k ( t ) k = − 1 1 � w j ( t ) ≈ φ ( x j , t ); g j ( t ) = s ( x j , t ); β k = 1 . k = − 1 6/35 6/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Discretization Vector Notation: Bw ′ ( t ) = Aw ( t ) + Bg ( t ) , A = ( a ij ) = ( h − 2 α j − i ) B = ( b ij ) = ( β j − i ) . Define: ξ k = ( − 1) k α − 1 + α 1 , η k = ( − 1) k β − 1 + β 1 . 7/35 7/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 1.1. Order Condition Let φ h be the restriction of the exact solution φ to the grid. Spatial truncation error: σ h ( t ) = Bφ ′ h ( t ) − Aφ h ( t ) − Bg ( t ) . Truncation error in a point ( x j , t ) equals: σ h,j ( t ) = h − 2 ( C 0 φ + hC 1 φ x + h 2 C 2 φ xx + h 3 C 3 φ xxx + ... ) | ( x j ,t ) Order Condition : The discretization has order q if: σ h = O ( h q ) , translates to: C k = O ( h q +2 − k ) , k = 0 , 1 , · · · , q + 2 . 8/35 8/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Order Condition Error coefficients: C 0 = − ξ 0 , C 1 = − ξ 1 − uhη 0 , C k = − 1 k ! ( ξ k + kuhη k − 1 − k ( k − 1) ǫη k − 2 ); k ≥ 2 . where, ξ k = ( − 1) k α − 1 + α 1 , η k = ( − 1) k β − 1 + β 1 . Use the order condition to determine α j and β j . 9/35 9/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 2. Examples Explicit Central Difference j = u 2 h ( w j − 1 − w j +1 ) + ǫ w ′ h 2 ( w j − 1 − 2 w j + w j +1 ) + g j , Implicit Central Difference 1 u 6( w ′ j − 1 + 4 w ′ j + w ′ j +1 ) = 2 h ( w j − 1 − w j +1 ) h 2 ( w j − 1 − 2 w j + w j +1 ) + 1 ǫ + 6( g j − 1 + 4 g j + g j +1 ) 10/35 10/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Examples Define: µ = uh/ǫ ( Peclet Number ) . Explicit Adaptive Upwinding j = u 2 h ( w j − 1 − w j +1 ) + ǫ + 0 . 5 uhκ w ′ ( w j − 1 − 2 w j + w j +1 ) + g j , h 2 Where κ is defined as: κ = max (0 , 1 − 2 /µ ) . 11/35 11/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Examples Implicit Adaptive Upwinding 1 j − 1 + (1 − 1 u 2 κw ′ 2 κ ) w ′ j = 2 h ( w j − 1 − w j +1 ) + ǫ + 0 . 5 uhκ ( w j − 1 − 2 w j + w j +1 ) h 2 + 1 2 κg j − 1 + (1 − 1 2 κ ) g j . 12/35 12/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Examples Peclet Number µ : µ = uh/ǫ. Explicit Exponential Fitting 1 � w ′ α k w j + k + g j , j = k = − 1 exp( µ ) 1 α − 1 = uh exp( µ ) − 1 , α 1 = uh exp( µ ) − 1 , α 0 = − ( α 1 + α − 1 ) . 13/35 13/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit Exponential Fitting 1 � β − 1 w ′ j − 1 + β 0 w ′ j + β 1 w ′ j +1 = α k w j + k + β − 1 g j − 1 + β 0 g j + β 1 g j +1 . k = − 1 where β − 1 = 1 � exp( µ ) − 1 − 1 exp( µ ) � , 2 µ β 0 = 1 2 , β 1 = 1 � 1 1 � µ − . 2 exp( µ ) − 1 14/35 14/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Examples Compact Schemes: α − 1 = ǫ + 1 2 uh − uh ( β 1 − β − 1 ) , α 1 = ǫ − 1 2 uh − uh ( β 1 − β − 1 ) , α 0 = − ( α − 1 + α 1 ) , β − 1 = 1 γ (6 + 3 µ − µ 2 ) , β 0 = 1 γ (60 − 4 µ 2 ) , β 1 = 1 γ (6 − 3 µ − µ 2 ) and γ is a scaling factor given by: γ = 72 − 6 µ 2 . 15/35 15/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 3. Stability Requirement: || exp( tB − 1 A ) || ≤ C, for all t > 0 . We can write: A = V diag ( a k ) V − 1 , B = V diag ( b k ) V − 1 , with a k , b k eigenvalues of A, B respectively. Define global error e ( t ) : e ( t ) = V − 1 e ( t ) e ( t ) = φ h ( t ) − w ( t ) , ˆ Discretization error σ h ( t ) : σ h ( t ) = Bφ ′ σ h ( t ) = V − 1 σ h ( t ) . h ( t ) − Aφ h ( t ) − Bg ( t ) , ˆ 16/35 16/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Stability The error equation then reads: d b k dt ˆ e ( t ) = a k ˆ e ( t ) + ˆ σ h ( t ) . Stability if: Re ( a k /b k ) ≤ 0 | a k | + | b k | > 0 . and Result : For the three point scheme considered with C 0 = C 1 = 0 , C 2 = O ( h ) , and assume that: h − 2 | α 0 | + | β 0 − 1 2 | > 0 , then the stability condition holds iff: 2 ah ( β 1 − β − 1 ) ≥ α 0 , α 0 (1 − 2 β 0 ) ≥ 0 . and 17/35 17/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 4. Time Integration Aspect Ode system: Bw ′ ( t ) = Aw + Bg ( t ) . Define: F ( t, w ) = Aw ( t ) + Bg ( t ) . • We use the θ method (with θ = 0 . 5 : Bw n +1 = Bw n + 0 . 5 τF ( t n , w n ) + 0 . 5 τF ( t n +1 , w n +1 ) . • With Explicit method, there is some amount of ’implicitness’!. • Stability conditions in general become more stringent in case of implicit discretization method. • For an implicit A-stable ODE method for time stepping, little difference between the two methods. 18/35 18/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 5. Numerical Computations Error for Implicit vs Explicit Central Difference 19/35 19/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit vs Explicit Adaptive Upwinding 20/35 20/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit vs Explicit Exponential Fitting 21/35 21/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit vs Explicit 22/35 22/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit vs Explicit Central Difference 23/35 23/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit vs Explicit Adaptive Upwinding 24/35 24/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 Implicit vs Explicit Exponential Fitting 25/35 25/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 26/35 26/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 27/35 27/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 28/35 28/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 29/35 29/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 30/35 30/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 31/35 31/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 32/35 32/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 33/35 33/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 34/35 34/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
12 6. Conclusion When do we use Implicit Spatial Discretization? • To achieve higher order without using wider stencils. • To reduce the artificial oscillations in the numerical solution. • Provides extra degrees of freedom for the numerical scheme. Disadvantages • Positivity may be lost. • Stringent conditions for explicit time integration methods. 35/35 35/35 ◭ ◭ ◭ ◭ � ◮ ◮ ◭ ◭ � ◮ ◮ ◮ ◮
Recommend
More recommend