Rapid Convergence using Implicit Smoothing with Runge-Kutta Schemes for Navier-Stokes CFD Futures Conference NIA, Hampton, VA August 6-8, 2012 Eli Turkel
Introduction • Efficiency is a challenge with increasing Problem Size Flow Complexities • Improvements in computational efficiency Multigrid Local Time Stepping Implicit Residual Smoothing Explicit time marching Runge-Kutta scheme Space centered or upwind schemes
RK/implicit smoother scheme RK/Implicit smoother scheme finite volume + source terms Extension to turbulent flow Extension to chemical reactions Time dependent - dual time step
Navier-Stokes Equations The Navier-Stokes (N-S) equations for the conservative variables: T Q ... u v w e 1 2 n N-S equations in conservative form: Q ( F F ) ( G G ) ( H H ) V V V S t x y z • F , G and H are the inviscid fluxes • F v , G v and H v are the viscous fluxes
k- ω SST Turbulent model • In turbulent flow, the viscosity is the sum of the laminar and the turbulent viscosity • In addition to N-S equation we solve the k- ω SST turbulence model equations - k k * u k P k k k T t x x j j 1 k 2 2 u S 2 1 F T 1 2 t x x x x j j j j
The turbulent viscosity μ t is given by ρ a k µ = ρν = 1 ( ) ω t T max a , SF 1 2 k and ω are the model variables, S is the magnitude of the vorticity, F 1,2 are dump functions, ν , ν T are the laminar and turbulent viscosity parameters 10
Real gas equation of state The equation of state is n RT P RT i W i 1 with the mean molecular weight n 1 1 i W w i 1 i
Chemical reactions source terms The source term vector, S, describes the rate of change of species k: d k w q k 1,2,..., N k k k k ik i dt i all reactions where ω k and w k are the molar concentration and molecular weight of the species. ν ik are the stochiometric coefficients of the species k in the reaction i. q i are the rate of progress variables given by - , q q q k 1 , f i f i r , i A B C q f,i and q r,i are defined by: k 1 , r k 2 , f ' ' ki ' ; q k q k 2 C E ki r , i r , i k f , i f , i k k k spieces k spieces 2 , r
The forward reaction rate k f and the reverse rate k r are empirically known functions of the temperature. The forward constant is given by an Arrhenius expression of the type: ∑ υ ik P ∆ ∆ β − S H = = ∈ i E / RT k K atm = − k K k A T i e i K p exp r , i p f i i , RT R RT A i , β i and E i are the Arrhenius constants: A i is the rate constant β i is the temperature exponent E i is the activation energy. The source term for the temperature is 1 ∑ = − ρ T h ρ k k c k v
RK/Standard Scheme: Three Components • The 3 components are: RK scheme, implicit residual smoothing, multigrid • The qth stage of the RK component can be written as W ( q ) = W (0) − α 1 ∆ t R ( W ( q − 1) ) where R is the vector residual function, ∆ t is the time step, and the RK coefficients α q are [0 . 25 , 0 . 1667 , 0 . 375 , 0 . 5 , 1 . 0] . The residual function R is given by q q R = R ( W ( q ) ) = 1 L c W ( q ) + γ qr L v W ( r ) + γ qr L d W ( r ) � � , V r =0 r =0 with the operators L c , L v , and L d for convection, viscous diffusion and numerical dissipation.
RK/Implicit Scheme • The change in the solution on the q th stage ∆ t δ W ( q ) = W ( q ) − W (0) = − α q V L W ( q − 1) = � R ( W ( q − 1) ) , L is the complete difference operator. • If we apply implicit residual smoothing, then L i δ W = δ W ( q ) , where L i is an implicit operator. • Approximately inverting the implicit operator L i ∆ t V P L W ( q − 1) , δ W = − α q L − 1 P is a preconditioner defined by the approximate inverse � . i
Transforming the equations to primitive variables, the flux Jacobian is written as: A A A where 1 A A A 2 Finally, the implicit smoothing scheme is given by: t S I A ndS t Q local V Q all faces t Q A Q ndS NB V all faces
3 3 wgts: [1 1 1] wgts: [1 1 1] 2 wgts: [1 .5 .5] 2 wgts: [1 .5 .5] 1 1 Im 0 Im 0 -1 -1 -2 -2 -3 -10 -8 -6 -4 -2 0 -3 -10 -8 -6 -4 -2 0 Re Re (b) (a) Figure 1: Fourier footprints of RK(3,3) scheme with two preconditioners for all modes with high-frequency components (64 × 64, M = 0 . 5, α = 0 ◦ , CFL = 10 3 , AR = 5, Re = ∞ ). (a) Without entropy fix, (b) with entropy fix.
3 3 0.25 0.35 0 0.35 0.2 0.35 0.2 . 2 0.2 5 0.2 0.2 0.25 0.25 0.1 0.1 2 2 0.1 0.2 0.15 0.1 0.15 0.15 0.2 0.2 0.2 0.4 1 1 0.15 0.4 0.3 0.6 0.6 0.8 0.8 0.8 0.8 θ y θ y 0 0.4 0 0.35 -1 -1 -2 -2 -3 -3 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 θ x θ x (a) (b) Figure 2: Effect of dissipation weights on damping behavior of RKI(3 , 3) scheme (64 × 64, M = 0 . 5, α = 45 ◦ , CFL = 10 3 , AR = 1, Re = ∞ , 2 SGS). (a) wgts: [1, 1, 1], (b) wgts: [1, 0.5, 0.5]. 3 3 0.2 0.25 2 2 0 . 2 0.2 0.15 0.15 1 1 0.25 0.15 4 . θ y 0 θ y 0 0 . 9 0 0 . 3 0.9 0 . 2 5 5 -1 -1 0.15 0 . 2 0.2 -2 -2 0.25 0.2 -3 -3 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 θ x θ x (a) (b) Figure 3: Damping behavior of RKI(3 , 3) scheme with variation in Re and AR (64 × 64, M = 0 . 5, α = 45 ◦ , 2 SGS). (a) Re = 10 2 , AR = 10, CFL = 10 3 , (b) Re = 10 6 , AR = 10 3 , CFL = 10 4 .
Extension to turbulent flow We solve two sets of equations for the smoothed residuals independently: a) For the Eulerian primitive variables b) For the turbulent model variables – k and ω ~ ~ k Q ~ In the k- ω set we use the Jacobian of the source term: * * k S Q 0 2
Extension to chemical reactions For a real gas, we insert part of the entries of the Jacobian source terms into the system for the Eulerian variables’ residuals. For the { ω ,T, u } primitive variables, the Jacobian matrix we use is ∂ ω ∂ ω 1 1 0 0 0 ∂ ω ∂ T 1 ∂ ω ∂ ω 2 2 0 0 0 ∂ ω ∂ T { } 2 ω = ∂ ω ∂ ω R J , T , u 3 3 0 0 0 ∂ ω ∂ T 3 0 0 0 0 0 ∂ T 0 0 0 0 ∂ T
For { ρ , P, u } variables this matrix becomes ∂ ω ∂ ω ∂ ω ∂ ω ∂ ω w w w W TW TW TW − − − 1 1 1 1 1 1 1 1 0 ∂ ω ∂ ρ ∂ ρ ∂ ρ ρ ∂ T w T w T R T 1 2 3 ∂ ω ∂ ω ∂ ω ∂ ω ∂ ω w w w W TW TW TW − − − 2 2 2 2 2 2 2 2 0 ∂ ρ ∂ ω ∂ ρ ∂ ρ ρ ∂ w T T w T R T { } 1 2 3 ρ = ∂ ω ∂ ω ∂ ω ∂ ω ∂ ω R J , P , u w w w W TW TW TW − − − 3 3 3 3 3 3 3 3 0 ∂ ρ ∂ ρ ∂ ω ∂ ρ ρ ∂ w T w T T R T 1 2 3 0 0 0 0 0 ∂ ω ∂ ω ∂ ω ∂ ∂ ∂ ∂ RT T P RT T P RT T P T P − − − 1 2 3 0 ∂ ω ∂ ∂ ω ∂ ∂ ω ∂ ∂ w P T w P T w P T P T 1 1 2 2 3 3 where ∂ ω ∂ ∂ P T P ∑ = + i RT ∂ ∂ ∂ T T T T
Determination of temperature from internal energy For a given internal energy e 0 , we want to determine the temperature. We solve the equation f(T) = e(T) – e 0 = 0 iteratively using the Newton-Rapson method f T n T T n 1 n f ' T n de T c T T e T e c v n n n 0 T v n 1 dT c T v n
Recommend
More recommend