Beruflich Dokumente
Kultur Dokumente
Galerkin approximation of the Navier–Stokes equations may fail due to two reasons: In convection-
dominated flows, where layers appear in which the solution of velocity and its gradient varies rapidly,
Galerkin’s classical approach leads to numerical oscillations in these regions that can spread rapidly and
compromise the solution; use of inappropriate combinations of Shape functions to represent velocity
and pressure fields results in unstable patterns. The instabilities associated with Galerkin’s formulation
are usually avoided by adding stabilization terms.
The incompressible Navier–Stokes equations are used to model a number of important physical flow
phenomena. A standard reference for mixed finite element methods is the book by Brezzi and Fortin,
history of residual-based stabilization methods is found in Brezzi, Donea and Huerta’s book and Tez-
duyar’s SUPG/PSPG methods.
Momentum equation:
∂u
+ (u.O) u − Oδ = fˆ
∂t
Continuity equation:
O·u=0
δn̂ = ĥ in ΓN × (0, T )
u = g in ΓD × (0, T )
u (y, y, z, 0) = u0 in Ω × {0}
1
Weak form formulation
For 2D case, Ω ∈ R2 , Navier–Stokes equations
reads:
" #
∂ 2u
2
∂ u ∂ 2u
∂u ∂u ∂u −∂ P̂
+ u +v − + 2v 2 − v + = fˆx (1,1)
∂t ∂x ∂y u ∂x ∂x ∂y 2 ∂xy u
u
" #
∂ 2v
2
∂ u ∂ 2v
∂v ∂v ∂v −∂ P̂
+ u +v − + 2v 2 − v + = fˆy (2,1)
∂t ∂x ∂y v ∂y ∂y ∂xy ∂x2 v
v
∂u ∂v
+ =0 (3,1)
∂x ∂y
The spatial domain of equations 1,1, 2,2 and 3,2 is solved by the finite element method. A weighted
residual formulation of these equations is obtained by multiplying the velocity weighting function α,
then, integrating over the domain Ω and applying the divergence theorem.
Multiply by a test function.
" #
∂ 2u
2
∂ u ∂ 2u
∂u ∂u ∂u −∂ P̂
α +α u +v −α + 2v 2 − vα + = αfˆx (1,2)
∂t ∂x ∂y u ∂x ∂x ∂y 2 ∂xy u
u
" #
∂ 2v ∂ 2u ∂ 2v
∂v ∂v ∂v −∂ P̂
α +α u +v −α + 2v 2 − vα + = αfˆy (2,2)
∂t ∂x ∂y v ∂y ∂y ∂xy ∂x2 v
v
∂u ∂v
β +β =0 (3,2)
∂x ∂y
2
Divergence theorem in stress tensor and internal source.
Z Z Z
w (x) · Oσ (x) dΩ = − Ow (x) · σ (x) Ω + w (x) · σ (x) dΓ
Z Z Z Z Z
∂u ∂u ∂u ∂α ∂u ∂α ∂u ∂v
α dΩ + α u +v dΩ + −P̂ + 2v dΩ + v + dΩ = αfˆx dΩ
∂t ∂x ∂y u ∂x ∂x u ∂y ∂y ∂x u
Z
+ αtxθ dΓ (1,4)
Z Z Z Z Z
∂v ∂v ∂v ∂α ∂v ∂α ∂u ∂v
α dΩ + α u +v dΩ + −P̂ + 2v dΩ + v + dΩ = αfˆy dΩ
∂t ∂x ∂y v ∂y ∂y v ∂x ∂y ∂x v
Z
+ αtyθ dΓ (2,4)
Z Z
∂u ∂v
β dΩ + β dΩ = 0 (3,4)
∂x ∂y
Where
3
Z Z Z
∂u ∂u ∂v
αtxθ dΓ = − α −P̂ + 2v dΓ − v α + dΓ
∂x u ∂y ∂y u
Z Z Z
∂v ∂u ∂v
αtyθ dΓ = − α −P̂ + 2v dΓ − v α + dΓ
∂y v ∂y ∂y v
The use of integration by parts has relaxed the requirements of differentiation by shifting some derivatives from the pressure field and stress tensor
to the interpolation functions. After this process we have obtained the continuous weak formulation:
Z Z Z Z Z Z
∂u ∂u ∂u ∂α ∂α ∂u ∂α ∂u ∂α ∂v
α dΩ + α u +v dΩ − P̂ dΩ + v 2 + dΩ + v dΩ = αfˆx dΩ
∂t ∂x ∂y u ∂x ∂x ∂x ∂y ∂y ∂y ∂x
Z
+ αtxθ dΓ
(1,5)
Z Z Z Z Z Z
∂v ∂v ∂v ∂α ∂α ∂v ∂α ∂v ∂α ∂u
α dΩ + α u +v dΩ − P̂ dΩ + v +2 +v dΩ = αfˆy dΩ
∂t ∂x ∂y v ∂y ∂x ∂x ∂y ∂y ∂x ∂y
Z
+ αtyθ dΓ
(2,5)
Z Z
∂u ∂v
β dΩ + β dΩ = 0 (4,5)
∂x ∂y
4
Streamline Upwind Galerkin Petrov (SUPG)
When expressing the Momentum equation in the convection-diffusion form, Galerkin finite element
method, by using the weighting functions, is unable to give stable solution if the flow is convection
dominated. In this case, the nodal approximation suffers from spurious oscillations, unless an intelli-
gent technique is adopted to discretize the computational domain. Among all the options to balance the
false numerical oscillations, Brooks and Hughes used a modified weighting function along the streamline
to obtain a weighted residual formulation; this method is called Streamline Upwind Galerkin Petrov
(SUPG).
n Z
Z
α (Lu − f ) dΩ+
X
τ Ladv (α) (Lu − f ) dΩ
e=1
α test function.
τ stabilization parameter.
Stabilization terms:
For 2D case the stabilization terms reads:
∂α ∂α
Ladv (α) = u +v
∂x ∂y u
" #
∂ 2u
2
∂ u ∂ 2v
∂u ∂u ∂u −∂ P̂
(Lu − f ) = + u +v − + 2v 2 − v + − fˆx
∂t ∂x ∂y u ∂x ∂x ∂y 2 ∂xy u
u
∂α ∂α
Ladv (α) = u +v
∂x ∂y v
" #
∂ 2v
2
∂ u ∂ 2v
∂v ∂v ∂v −∂ P̂
(Lu − f ) = + u +v − + 2v 2 − v + − fˆy
∂t ∂x ∂y v ∂y ∂y ∂xy ∂x2 v
v
5
Adding these terms to the momentum equations 1,5 and 2,5, we generate the following system of
continuous equations:
Z Z
∂u
+ α dΩ+ + αfˆx dΩ+
∂t
Z Z
∂u ∂u
+ α u +v dΩ+ + αtθx dΓ+
∂x ∂y u
Z n
∂α X
− P̂ dΩ+ + {. . .
∂x
e=1
Z
∂α ∂u ∂α ∂u Z
+v 2 + dΩ+ ∂α ∂α
∂x ∂x ∂y ∂y + τ u +v fˆx dΩ
∂x ∂y u
Z
∂α ∂v
+v dΩ+
∂y ∂x
n
X
+ {. . .
e=1
Z
∂α
∂u ∂α
+ τ u +v
dΩ+
∂x
u ∂t ∂y
Z
∂α ∂α ∂u ∂u
+ τ u +v u +v dΩ+
∂x ∂y u ∂x ∂y u
Z
∂α ∂α ∂ P̂
− τ u +v dΩ+
∂x ∂y u ∂x
2
∂ u ∂ 2u
Z
∂α ∂α
−v τ u +v 2 + dΩ+
∂x ∂y u ∂x2 ∂y 2
∂α ∂ 2 v
Z
∂α
+ τ u +v dΩ+
∂x ∂y u ∂xy
= ...
6
Eq. (2, 6)
Z
Z + αfˆy dΩ+
∂v
+ α dΩ+
∂t Z
Z + αtθy dΓ
∂v ∂v
+ α u +v dΩ+
∂x ∂y v nR h i o
+
Pn
τ u ∂α + v ∂α ˆy dΩ
f
e=1 ∂x ∂y
Z v
∂α
− P̂ dΩ+
∂y
Z
∂α ∂v ∂α ∂v
+v +2 dΩ+
∂x ∂x ∂y ∂y
Z
∂α ∂u
+v dΩ+
∂x ∂y
n
X
+ {. . .
e=1
Z
∂α ∂α ∂v
+ τ u +v dΩ+
∂x ∂y v ∂t
Z
∂α ∂α ∂v ∂v
+ τ u +v u +v dΩ+
∂x ∂y v ∂x ∂y v
Z
∂α ∂α ∂ P̂
− τ u +v dΩ+
∂x ∂y v ∂y
2
∂ 2v
Z
∂α ∂α ∂ v
+v τ u +v + 2 2 dΩ+
∂x ∂y v ∂x2 ∂y v
Z 2
∂α ∂α ∂ v
+v τ u +v dΩ+
∂x ∂y v ∂xy v
= ···
7
Eq. (3, 6)
Z Z
∂u ∂v
β dΩ + β dΩ = 0
∂x ∂y
Space discretization.
X X X X X
u= N (xi ) ui ; v = N (xi ) vi ; α = N (xi ) α; P̂ = M (xi ) α; β = M (xi ) β
n
X
+ {. . .
e=1
Z
∂·
τ N T uNxT α + N T vNyT α u N T udΩ+
+
∂t
Z
+ τ N T uNxT α + N T vNyT α u N T uNxT u + N T vNyT u u
dΩ+
Z
τ N T uNxT α + N T vNyT α u MxT P̂ dΩ+
−
Z
τ N T uNxT α + N T vNyT α u 2Nxx
T T
−v u + Nyy u dΩ+
Z
τ N T uNxT α + N T vNyT α u Nxy
T
+ vdΩ+
= ···
8
Sorting this out just a bit
Z Z Z
∂·
+ T
N N dΩu+ + N fˆx dΩ+
∂t
Z Z
N tθx dΓ+
T
N uN NxT + N T vN NyT u dΩu+
+ +
n
Z
−
X
Nx M dΩP̂ + + {. . .
e=1
Z
τ N T uNxT + N T vNyT u fˆz dΩ+
R
2Nx NxT + Ny NyT dΩu+ +
+v
Z
+v Ny NxT dΩv+
n
X
+ {. . .
e=1
Z
∂·
τ N T uNxT + N T vNyT u N dΩu+
+
∂t
Z
+ τ N T uNxT + N T vNyT u N T uNx + N T vNy u dΩu+
Z
τ N T uNxT + N T vNyT u Mx dΩP̂ +
−
Z
τ N T uNxT + N T vNyT u [2Nxx + Nyy ] dΩu+
−v
Z
τ N T uNxT + N T vNyT u Nxy dΩv+
+
= ···
9
Eq. (2, 7)
Z Z Z
∂·
+ T T
N αN vdΩ+ + N T αfˆdΩ+
∂t
Z
N T α N T uNxT v + N T vNyT v v dΩ+
+
Z
+ N T αtθy dΓ+
Z
− NyT αM T P̂ dΩ+
n
X
Z + {. . .
e=1
T
Nx αNxT v + 2NyT αNyT v dΩ+
+v
τ N T uNxT α + N T vNyT α v fˆy dΩ+
R
+
Z
+v NxT αNyT udΩ+
n
X
+ {. . .
e=1
Z
∂·
τ N T uNxT α + N T vNyT α v N T vdΩ+
+
∂t
Z
+ τ N T uNxT α + N T vNyT α v N T uNxT v + N T vNyT v v
dΩ+
Z
τ N T uNxT α + N T vNyT α v MyT P̂ dΩ+
−
Z
τ N T uNxT α + N T vNyT α v Nxx
T T
+v v + 2Nyy v v dΩ+
Z
τ N T uNxT α + N T vNyT α v Nxy
T
+v udΩ+
10
Sorting this out just a bit
Z Z Z
∂·
+ T
N N dΩv+ + N fˆy dΩ+
∂t
Z Z
N tθy dΓ+
T
N uN NxT + N T vN NyT v vdΩ+
+ +
n
Z
− Ny M T dΩP̂ +
X
+ {. . .
e=1
Z
NxT NxT v + 2NyT NyT dΩv+
Z
+v
τ N T uNx + N T vNy v fˆy dΩ+
+
Z
+v NxT NyT dΩu+
n
X
+ {. . .
e=1
Z
∂·
τ N T uNx + N T vNy v N dΩv+
+
∂t
Z
+ τ N T uNx + N T vNy v N T uNxT + N T vNyT v dΩv+
Z
τ N T uNx + N T vNy v My dΩP̂ +
−
Z
τ N T uNx + N T vNy v Nxx
T T
+v + 2Nyy v
dΩv+
Z
τ N T uNx + N T vNy v Nxy dΩu+
+v
= ···
Eq. (4, 7)
Z Z
T
+ M βNxT udΩ+ + Nx M T dΩu+
Z Z
T
+ M βNyT vdΩ+ + Ny M T dΩv+
=0 =0
11
discretization:
un+1 − un
= θF un+1 , tn+1 + (1 − θ) F (un , tn )
∆t
Eq. (1, 8)
Z Z
1 + N fˆx dΩ+
+ N N T dΩun+1 +
∆t
Z Z
+ N tθx dΓ+
T
N uN NxT + N T vN NyT u dΩun+1 +
+θ
Z
Z 1
−θ Nx M dΩP̂ n+1
+ + N N T udΩ+
∆t
Z Z
N N T uNxT u + N T vNyT u u dΩ+
2Nx NxT + Ny NyT dΩun+1 + − (1 − θ)
+vθ
Z Z
+vθ Ny NxT dΩv n+1 + + (1 − θ) Nx M T P̂ dΩ+
Z
n
2Nx NxT u + Ny NyT u dΩ+
X −v (1 − θ)
+ {. . .
e=1 Z
1
Z −v (1 − θ) Ny NxT vdΩ+
τ N T uNxT + N T vNyT u dΩun+1 +
+
∆t
Xn
Z
+ {. . .
+θ τ N uNxT + N T vNyT u N T uNx + N T vNy u
T
e=1
dΩun+1 + 1 T
τ N uNx + N T vNy u N T udΩ+
+
Z ∆t
τ N T uNxT + N T vNyT u Mx dΩP̂ n+1 +
−θ Z
− (1 − θ) τ N T uNx + N T vNy u N T uNxT u + N T vNyT u
Z
τ N T uNxT + N T vNyT u [2Nxx + Nyy ] dΩun+1 +
+vθ dΩ
Z
τ N T uNx + N T vNy u MxT P̂ dΩ+
+ (1 − θ)
Z
τ N T uNxT + N T vNyT u Nxy dΩv n+1 +
+θ
Z
= ··· τ N T uNx + N T vNy u 2Nxx
T T
−v (1 − θ) u + Nyy u dΩ+
Z
τ N T uNx + N T vNy u Nxy
T
− (1 − θ) vdΩ+
12
Eq. (2, 8)
Z Z
1
+ T
N N dΩv n+1
+ + N fˆy dΩ+
∆t
Z
+ N tθy dΓ+
Z
N T uN NxT + N T vN NyT dΩv n+1 +
+θ v
Z
1
+ N N T vdΩ+
∆t
Z
−θ Ny M T dΩP̂ n+1 + Z
N N T uNxT v + N T vNyT v v dΩ+
− (1 − θ)
Z
T T
Nx Nx v + 2NyT NyT dΩv n+1 +
+vθ Z
+ (1 − θ) Ny M T P̂ dΩ+
Z Z
+vθ NxT NyT dΩun+1 + −v (1 − θ)
Ny NxT v + 2Ny NyT v dΩ+
Z
n
X −v (1 − θ) Nx NyT udΩ+
+ {. . .
e=1
n
X
+ {. . .
Z
1
τ N T uNx + N T vNy v dΩv n+1 +
+ e=1
∆t
+ 1 τ N T uN + N T vN N T vdΩ+
Z
T T
T T T T
+θ τ N uNx + N vNy v N uNx + N vNy v x y v
∆t
dΩv n+1 +
Z
− (1 − θ) τ N T uNx + N T vNy v N T uNxT v + N T vNyT v
Z
−θ τ N T uNx + N T vNy v My dΩP̂ n+1 +
dΩ
Z
T T
MyT P̂ dΩ+
+ (1 − θ) τ N uN + N vN
Z
x y v
+vθ τ N uNx + N T vNy v Nxx
T T T
n+1
+ 2Nyy v
dΩv +
Z
T T
T T
−v (1 − θ) τ N uN + N vN N v + 2Nyy v dΩ+
v
Z
x y v xx
+vθ τ N uNx + N T vNy v Nxy dΩun+1 +
T
Z
−v (1 − θ) τ N T uNx + N T vNy v Nxy
T
= ··· udΩ+
Z
τ N T uNx + N T vNy v fˆy dΩ+
+
Eq. (3, 8)
= ···
Z
+θ Nx M T dΩun+1 +
Z Z
+θ Ny M T dΩv n+1 + − (1 − θ) M NxT udΩ+
Z
− (1 − θ) M NyT vdΩ+
13
Matrix form.
The system of discrete equations can be expressed as matrices of the type E · u = f . Where E are the terms of the system of equations containing
the interpolation functions, u is the vector of sought quantities and f is the vector of known quantities in the last time. The system of discrete
equations can be expressed as matrices of the type E · u = f . Where E are the terms of the system of equations containing the interpolation
functions, u is the vector of sought quantities and f is the vector of known quantities in the last time.
Z Z Z
1
T + N N T dΩ + D +θ [Ny NxT ]dΩ + C’ − θ [NX M dΩ +
∆t
Z n
X n
X
A +θ [N T uN NxT + N T vN NyT ]dΩ + + {. . . + {. . .
Z e=1 Z e=1 Z
D + νθ [2Nx NxT + Ny NyT ]dΩ + D − νθ τ [N T
uNxT +N T
vNyT ] Nyx dΩ} C’ − νθ τ [N T uNxT + N T vNyT ] M x dΩ}
n
X
+ {. . .
e=1 Z
1
T + τ [N T uNxT + N T vNyT ] N dΩ +
∆t
Z
A + τ [N T uNxT + N T vNyT ] [N T uNxT + N T vNyT ]dΩ +
Z
D +θ τ [N T uNxT + N T vNyT ] [N T uNxT + N T vNyT ]dΩ +
14
Z
D − νθ τ [N T uNxT + N T vNyT ] [2Nx NxT + Ny NyT ]dΩ}
Z Z Z
1
D’ + θ [Nx NyT dΩ + T + T
N N dΩ + C’ − θ [Ny M dΩ +
∆t
n
X Z n
X
+ {. . . A +θ [N T uN NxT + N T vN NyT ]dΩ + + {. . .
e=1 Z Z e=1 Z
T
D’ − νθ τ [N uNxT +N T
vNyT ] Nyx dΩ} D + νθ [Nx NxT + 2Ny NyT ]dΩ + C’ − νθ τ [N T uNxT + N T vNyT ] M y dΩ}
n
X
+ {. . .
e=1 Z
1
T + τ [N T uNxT + N T vNyT ] N dΩ +
∆t
Z
A + τ [N T uNxT + N T vNyT ] [N T uNxT + N T vNyT ]dΩ +
Z
D +θ τ [N T uNxT + N T vNyT ] [N T uNxT + N T vNyT ]dΩ +
Z
D − νθ τ [N T uNxT + N T vNyT ] [Nx NxT + 2Ny NyT ]dΩ}
Z Z
C +θ [Nx M T dΩ + C + θ [Ny M T dΩ +
T Time Matrix; A Convection Matrix; D Diffusion Matrix; C Continuity Matrix.
As seen from the color code in the matrix above, a simpler version of the E matrix can be written
according to the physical
i h imeaning iof the termsh that
i compose the terms of the system hof equations
T + A + D C 0 · u = f1 . Where u is the vector of sought values and f1 is the
h h i
C 0 p f2 p f2
vector of known values. This system of equations has been implemented in EduFEM according to the
attached flow chart.
15