The Finite Volume Method
The Finite Volume Method
Method
CHEN 6355
Computational Fluid Dynamics
Spring 2019
Tony Saad
∂φ ∂φ ∂ ∂φ
∫ V ∂t
dV = −
∫c dV +
V ∂x ∫ V ∂x
k dV
∂x
Remember, the integral form is based on a control volume - so, let’s split up our
computational domain into discrete control volumes
W P E
∂φ
e e ∂φ e ∂ ∂φ
∫w ∂t dx = − ∫w c ∂x dx + ∫w ∂x k ∂x dx
W P E
∂φ e e
A = − ∫ c dx = −cφ w = −c(φe − φ w )
w ∂x
φ P + φW φE + φP
φw ≈ φe ≈
2 2
φ E − φW
A=
2
CHEN 6355 - Computational Fluid Dynamics © Prof. Tony Saad - www.tsaad.net
w e
W P E
e
∂ ∂φ e ⎛ ∂φ ⎞ ∂φ ∂φ
D=∫ k dx = ⎜ k ⎟ = ke − kw
w ∂x ∂x ⎝ ∂x ⎠ w ∂x e ∂x w
∂φ φE − φP ∂φ φ P − φW
≈ ≈
∂x e Δx ∂x w Δx
φ E − 2φ P − φW
D=k
Δx
CHEN 6355 - Computational Fluid Dynamics © Prof. Tony Saad - www.tsaad.net
W P E
∂φ
e ∂φ P
∫w ∂t dx ≈ ∂t Δx
1
φP ≡
V ∫ φ dV
V
∂φ P
Δx = − A + D
∂t
∂φ P φ E − φW φ E − 2φ P + φW
=− +k
∂t 2Δx Δx 2
N2
N1
f2 f1
N3 f3
f6
f4 C
f5 N6
N4
N5
∫ ∇ ⋅ uφ dV = ∫ uφ ⋅ ndS
f5
V S
∫V
∇ ⋅ k∇φ dV = ∫ k∇φ ⋅ ndS
S
So that the
∂φ
governing
equation is: ∫V ∂t dV = − ∫S J ⋅ ndS + ∫V Sφ dV
CHEN 6355 - Computational Fluid Dynamics © Prof. Tony Saad - www.tsaad.net
∂φ
∫V ∂t dV = − ∫S J ⋅ ndS + ∫V Sφ dV
f2 f1
f3
C f6 Next, split the flux integral
f4
f5
∫S
J ⋅ ndS = ∑∫ Si
J ⋅ ndSi
f1 , f 2 ,…
∫ uφ ⋅ ndS = ∑ ∫
S
f1 , f 2 ,…
Si
uφ ⋅ ndSi
n s = (0,−1)
= ∫ uφ ⋅ n e dSe + ∫ uφ ⋅ n w dS w + ∫ uφ ⋅ n n dS n + ∫ uφ ⋅ n s dSs
fe fw fn fs
= ∫ uφ dSe − ∫ uφ dS w + ∫ vφ dS n − ∫ vφ dSs
fe fw fn fs
∂φ
∫V ∂t dV = − ∑ ∫Si
J ⋅ ndS i
+ ∫V
Q φ
dV
f1 , f 2 ,…
f (x)
f (x)dx = ∑ ω i f (xi )
b
∫
a
i
x1 x2 … xi …
a b
CHEN 6355 - Computational Fluid Dynamics © Prof. Tony Saad - www.tsaad.net
f (x)
f (x)dx = ∑ ω i f (xi )
b
∫
a
i
x1 x2 … xi …
a b
Examples
b ⎛ a + b⎞
∫ a
f (x)dx ≈ (b − a) f ⎜
⎝ 2 ⎟⎠
Midpoint rule
⎛ a + b⎞
f (a) + 4 f ⎜ ⎟ + f (b)
b ⎝ 2 ⎠ Simpson’s rule
∫
a
f (x)dx ≈ (b − a)
2
∫ Q dV ≈ ΔV ∑ ω ipQip
V
ip
C1
C2 C4
C C
C3
At all faces
∫ J ⋅ ndS = ∑ ∫
S
f1 , f 2 ,…
Si
J i ⋅ n i dSi
∫V
φ dV ≈ φC ΔV
C
1
φC =
ΔV ∫ φ dV
V
∫ φ dV ≈ φ
V C
ΔV
C
1
φC =
ΔV ∫ φ dV
V
J1
∫ S1
J ⋅ ndS1 ≈ J1 ⋅ n1ΔS1
∂φ ∂φC
Time derivative
∫V ∂t dV ≈
∂t
ΔVC
∫
φ φ
Source terms Q dV ≈ Q ΔVC C
V
∂φC
ΔVC = − ∑ J f ⋅ n f ΔS f + QC ΔVC
φ
∂t f1 , f 2 ,…
w e
W P E
s
n
n w = (−1,0) n e = (1,0)
w e
W P
s
E
∑ (uφ ) f ⋅ n f ΔS f
f1 , f 2 ,…
n s = (0,−1)
∂φC
ΔxΔy = (uφ )e Δy − (uφ ) w Δy + (vφ ) n Δx − (vφ )s Δx
∂t
∂φC (uφ )e − (uφ ) w (vφ ) n − (vφ )s
= +
∂t Δx Δy
n w = (−1,0) n e = (1,0)
k ∑ ∇φ f ⋅ n f ΔS f
f1 , f 2 ,…
∂φ ∂φ ∂φ ∂φ
n s = (0,−1) =k Δy − k Δy + k Δx − k Δx
∂x e ∂x w ∂y n ∂y s
∂φC ∂φ ∂φ ∂φ ∂φ
ΔxΔy = k Δy − k Δy + k Δx − k Δx
∂t ∂x e ∂x w ∂y n ∂y s
∂φ ∂φ ∂φ ∂φ
− −
∂φC ∂x e ∂x ∂y n ∂y s
=k w
+k
∂t Δx Δy
CHEN 6355 - Computational Fluid Dynamics © Prof. Tony Saad - www.tsaad.net
What about the Fluxes?
So far, we haven’t said anything about how to
evaluate the fluxes at the control volume faces
∂φ φ E − φW
Diffusive Flux: = Second order (equivalent to central differencing)
∂x e Δx
(uφ ) E + (uφ )W
Convective Flux: (uφ )e = Second order (equivalent to central differencing)
2