Numerical Methods for Differential Equations
Advection-Diffusion
given vector field
for our case we go to 1D case
diffusive term advection term
b.c: u(0) = 0
u(L) = 1
- We want to figure out an exact solution of the problem.
U(x) = eβ/μx⁄eβ/μL − 1
β/μ >> 1
⇒
u(x) ≈ eβ/μ(x−L)⁄eβ/μL
β/μ = 10
- linear sol. when diffusive term dominates with respect to transport
- when transport dominates with respect to diffusion solution in 2 regions, 1 with strong variations, the other almost constant → high gradient regions = boundary layer → amplitude is of the size of: μ/β
Discretization with Finite Elements
- Dirichlet b.c.
global becomes
1st and last row adjusted according to b.c.
∀ node:
difference as finite differences
exact solution?
Pecelet number
0
NUMERICAL METHODS FOR DIFFERENTIAL EQNS
ADVECTION-DIFFUSION
given vector field
for our ease we go to 1D case
diffusive term
advection term
We want to figure out an exact solution of the problem:
linear sol. when diffusive term dominates with respect to transport
when transport dominates with respect to diffusion solution with 2 regions: 1 with strong variations, the other almost constant -> high gradient regions = boundary layer
Discretization with Finite Elements
Dirichlet b.c.
could also have constant term
global becomes
1st and last row adjusted according to b.c.
e.g. discretization of transport term: (3rd line of the problem)
Classic 1D F.E. scheme h, equivalent to a centered finite difference scheme
Laplace i.e. discretization
Central approximation
∀ node:
Finite differences
Peclet number
exact solution?
Pe = Bh/2μ
similar meaning of Pe, tells relative importance of advection and diffusion terms
- u = g ij, So fundam. solution a substitution we get charact. eqn a b.c. ⇨ Solution
Solution: u i = 1-(1+Pe)/(1-Pe)i/(1+Pe)/(1-Pe)n
Suppose, for simplicity, n=even, Pe ≈ 1 ⇨ Bh ≈ 2μ (Adv. dominates wrt Diff.)
Where is the problem?
- in the discretization we say something not meaningful from physical point of view!
- u n+1 - u n-1/2 is sensitive to the direction!!
We don't want to change approximation, only to avoid oscillations work on Pe
Pe = Bh/2μ ⇨ can play with h, so that Pe < 1
- h < 2μ/β
- in practice increasing of number of elements not used
- It involves very small elements, big issue in 2D or 3D
Other possibility: Loose something in order of convergence to avoid oscillation
- Upwind finite difference approximation
- only 1st order accurate
- it adds artificial diffusion, "killing" oscillations
u = u i-1 + 2u i - u i+1/h2
- [ β u i+1 - u i/h = 0
u i - u i+1 = -u i-1 + 2u i - u i+1/
It is, in practice, another diffusive term centered approximation of 1st derivative
( μ + Bh/2) u i - u i+1 + 2u i - u i+1/h2
equivalent to the original problem, in which physical diffusivity is increased of an artificial diffusion term, τ = 3Bh/2
We can try to generalize the hypothesis:
μ ( 1 + Bh 1 ) x = μ (1 + Pe) = xPe = Pe Bh 2/h2 = P2 1 + Pe
< < 1 ALWAYS!Very good for stability
μ = μ (1 + (ϕ(ρe)) ϕ (t) such that lim ϕ (t) = 0t→+∞If ϕ(t) = 0 go back to the original problem ( centered approx 2nd oder )ϕ(t) = upwinding, 1st oderϕ(t) = t - t + B(t), B(t) = tt, t 1t0 Bernoulli functionSchapfelter - Gummel (SG) 2nd oderfor constant facing term solution in the nodes analytical (TO)
Original problem in multi-dimensional case:
-μ Δu + (β ∙ ∇) u = 0discretization parameter, mesh size
(μ - ch(κ)) Δu + (β ∙ ∇) u = 0stabilization parameter, can be properly chosen
Actually we're adding an isotropic viscous term, same in all directions, butvector fields β affects the result
∫ [(μ + ch ∇) [ (∇u)∇v]] dz +∫ [β ∙ ∇u ∇v] dz = 0Could be better not to have anisotropic diffusion coefficient (acting more on vector field dir)
-div (∇ ( k ∇v) ), kij = ch βi βj weakfoundation
∫Ωch (β ∙ ∇v) (β ∙ ∇v)projecting viscosity on the direction of vector field β
μ d2dy 2 + βddydy dx = 0∫ μddvdv dx + ∫ βddvdv dx = 0add μ, so that∫Ω (1 + Bh2) ddvdv dx + (2/h) ∫ β ddvdv dx = 0μd2dgivendby xidxi
Like we have changed test function for diffusivity term = χ
∫ μddvdu dx = 0Test function is giving more weight to upwinding terms and less to downwinding ones
Upwinding done by χ, no more by hand, and only for diffusive part
Usually we don't want to choose different test functions for different parts of the problem, but here it’s really useful
• Considering generic node i and test function, want to add something null at both ends and parabolic ➞ cƴ (1-ƴ)
_ƴϕq(ƴ) = (1-ƴ) - cƴ (1-ƴ) ⎤ modified test functions_ƴϕq(ƴ) = ƴ + cƴ (1-ƴ) ⎦
◦ Original weak formulation: ∫I(ƴdvdu dⱯvdu) dx = 0
dt
◦ Use modified test f. for Ʋ ◦ use original test f. for u
◦ Petrov-Galerkin method (solution and test f. spaces are different)
ex.In 1D_Kij = ∫dxdⱯiqjdx_Tij = ∫dxdⱯi PjⱯ dxGalekin approachPetrov-Galerkin uses Ɐq
- compute Ɐij, ⱯijǼ and compare them with Ɐ〈ij〉 (should be ⱯK = ⱯK, Ɐ applied by some upwind)
• Strongly Consistent Stabilization
-div(Ƴuv) +b Ƴu +Ɐ = Ɐ u ≇FⱯ Ƌ2 on 2 could use FEM
OR
a(u,v) = Ƒ(v) v Ɐ0 H1(.⌠
a(u,ᵥ) = ƳⱯu o ∫Ω 1/2 [b ⋅ ∇u + div(bv)] v dx = (u, LTv) → L = -LT
A different approach could be used:
- L = au = bv u, LT = -div(bv)
- Lsymmu = 1/2 [(Lu + LTv) = 1/2 (b ⋅ ∇u - div(bu)) = 1/2 div b u
- Lskewu = 1/2 [(Lu - LTv) = 1/2 (b ⋅ ∇u + div(bu))
- Lsymm - div(au) - 1/2 div (b ⋅ v) + ∇u
For SUPG Shv - Lsh - v
- We choose μ, b as constant,
- ∇ ⋅ f = 0
- We inspect how advection and diffusion contribute
We focus on most common finite elements P1
L ᘯ uh = ᘯ −−−− = b ⋅ ∇uh = b ⋅ ∇uh
SNuhi = Lshev uh b ⋅ ∇uh
=> ∑ K τ ⋅ b ⋅ ∇u ⋅ b ⋅ ∇u
-
Takehome problems
-
Navier Sokes Problems
-
Report analisi multi field problems
-
General useful results and Elliptic Problems