講義予定(案)
1. ( 9/ 2) 数値シミュレーションの手続き (テキスト第1章)
2. ( 9/ 9) 偏微分方程式と解析解 (テキスト第2章)
3. ( 9/16) 休講
4. ( 9/30) 差分方程式とそのスキーム (テキスト第3章) +変換 (テキスト第4章)
5. (10/ 7) 計算 (テキスト第5章)+連立一次方程式の解法(テキスト第6章)
6. (10/21) 流れ関数‐ポテンシャルによる解法(テキスト第7章)
7. (10/28) 流速‐圧力を用いた解法 (テキスト第7章)
8. (11/ 4) 熱流体解析と多相流解析
9. (11/11) 乱流の数値解析 by 金子暁子先生
10. (11/18) 数値解析の実際 by 渡辺正先生(JAEA)
11. (11/25) (予備日)
差分スキームを吟味するための数学的概念
適切性 (well-posed)
適合性 (consistency)
安定性 (stability)
収束性 (convergency)
Lax の同等定理
「初期値問題が適切であるとき、差分スキームの差分要 素が適合条件を満たしていて、安定であれば収束す る。」
変換 ー変化する方程式の定性的性質ー
物理現象 (熱流体挙動)
計算モデル (差分方程式)
厳密解
代数分方程式 数学モデル
(偏微分方程式)
差分解 数値解
工学への応用
(開発、設計、性能評価) 仮説
(定式化)
変換
(差分近似) (離散化)
数値計算
適切性 安定性
収束性 適合性
Lax
の同等定理モデル問題: 線形問題に対する解析例
e
axy x
y ( ) =
0)
00
( y
y =
前進差分による差分表現:
微分方程式:
ay
dx dy =
厳密解:
1
,
i i
i
ay
x y
y =
Δ
+
− ( i = 0 , 1 , 2 , L , n )
より
( )
21
1
−−
= + Δ ⋅
ii
x a y
y
(適切性)
(適合性)
( )
ii
x a y
y
+1= 1 + Δ ⋅
( )
12
1 x a y
y = + Δ ⋅
( )
01
1 x a y
y = + Δ ⋅
i=0,1,2,
・・・,n
に対して記述すると、( 1 + Δ ⋅ )
−1=
ii
x a y
y
M
辺々掛け合わせることによって、
y
i= ( 1 + Δ x ⋅ a )
iy
0モデル問題: 線形問題に対する解析例
1 )
1 (
0 < + Δ xa <
(安定性)
( 1 x a ) y 0
y i = + Δ ⋅ i
( 1 + Δ x ⋅ a )
i→
有界のとき
∞
→
i
に対して1
0 < Δ xa <<
のときx = Δ x ⋅ i
であるから 一方e
axy x
y ( ) =
0 をx=0
のまわりで級数展開すると、( xa ) ( xa )
iy xa x
y ⎭ ⎬ ⎫
⎩ ⎨
⎧ Δ +
Δ + Δ +
+
= L
! 3
! 2
! 1 1
) (
3 2
0
数値解析結果と理論値との比較
0.00 0.20 0.40 0.60 0.80 1.00 1.20
0.00 0.20 0.40 0.60 0.80 1.00
X
Y
Theory
Numerical
変換 ー変化する方程式の定性的性質ー
物理現象 (熱流体挙動)
計算モデル (差分方程式)
厳密解
代数分方程式 数学モデル
(偏微分方程式)
差分解 数値解
工学への応用
(開発、設計、性能評価) 仮説
(定式化)
変換
(差分近似) (離散化)
数値計算
適切性 安定性
収束性 適合性
Lax
の同等定理差分法方程式の適合性の評価
対流・拡散方程式について、
3.風上差分: 1次の打切り誤差
2.Leap Frog スキーム: 2次の打切り誤差 1.FTCSスキーム: 1次の打切り誤差
(打切り誤差O(
Δ
x), O(Δ
t))(打切り誤差O(
Δ
x2
), O(Δ
t2
))(打切り誤差O(
Δ
x2
), O(Δ
t))風上差分 (1次の打切り誤差)
対流・拡散方程式について、1次の打切り誤差となる差分近似
差分スキーム:
2
1 1
1
1
2
x
u u
u x
u c u
t u
u
in in in in in in inΔ
+
= − Δ
+ − Δ
−
− + −+
α
(打切り誤差O(
Δ
x), O(Δ
t))( ) ( n i n )
i n
i n
i n
i n
i n
i u C u u d u u u
u + 1 = − − − 1 + + 1 − 2 + − 1
x
2d t x c t
C Δ
= Δ Δ
= Δ α
Leap Frog スキーム ( 2次の打切り誤差)
対流・拡散方程式について、2次の打切り誤差となる差分近似
2
1 1
1 1
1
1
2
2
2 x
u u
u x
u c u
t u
u
in in in in in in inΔ
+
= − Δ
+ − Δ
−
− + − + −+
α
(打切り誤差O(
Δ
x2
), O(Δ
t2
))差分スキーム:
( ) ( n i n )
i n
i n
i n
i n
i n
i u C u u d u u u
u + 1 = − 1 − + 1 − − 1 + 2 + 1 − 2 + − 1
x
2d t x c t
C Δ
= Δ Δ
= Δ α
FTCSスキーム (1次の打切り誤差)
対流・拡散方程式について、FTCSスキームを用いて 差分近似する
2
1 1
1 1
1
2
2 x
u u
u x
u c u
t u
u
in in in in in in inΔ
+
= − Δ
+ − Δ
−
+ − + −+
α
差分スキーム:
( ) ( i n )
n i n
i n
i n
n i i n
i C u u d u u u
u
u
1 1 1 1 12
12
+ −−
− +
+
− + − +
−
=
x
2d t x c t
C Δ
= Δ Δ
= Δ α
差分法方程式の適合性の評価
対流・拡散方程式について、
3.風上差分: 1次の打切り誤差 2.Leap Frog : 2次の打切り誤差 1.FTCS: 1.5次の打切り誤差
Program: ADVDIF1
不安定
安定
不安定
動的不安定性と静的不安定性
拡散・対流方程式に対するFTCS近似
2
1 1
1 1
1
2
2 x
u u
u x
u c u
t u
u
in in in in in in inΔ
+
= − Δ
+ − Δ
−
+ − + −+
α
n
u
iこの方程式の解に「ゆらぎ」が含まれているとする。時刻nの 解をゆらぎのない差分解 とゆらぎ
ε i
に分ける。i n
i n
i u
u = + ε
この式をFTCS近似式に代入し、時刻nでゆらぎのない差分 解が存在すると仮定すると、
Δ
t進めたときの増分Δ
ui
は(
1 1)
12
2 12 t x
x t c
u
i i i i i iΔ + Δ −
+ Δ −
Δ
−
=
Δ ε
+ε
−α ε
+ε ε
−動的不安定性
右辺第2項のみを考える。点i近傍の初期摂動を
が得られる。つまり点iの摂動は
ε i
<0であったがΔ
ui
>0となって、時間を
Δ
t進めることによって摂動ε i
を増分Δ
ui
が補償する傾 向になる。同様に点i+1における増分Δ
ui+1
を考えると、0 ,
0 ,
0 ,
0
1 21
> <
+>
+<
− i i i
i
ε ε ε
ε
とする。この初期摂動を
Δ
ui
の式に代入すると2 0
2 1
1
>
Δ
− Δ +
=
Δ
+ −t x
u
iα ε
iε
iε
i2 0
2
1 2
1
<
Δ
− Δ +
=
Δ
+ + +t x
u
iα ε
iε
iε
iとなり、摂動
ε i+1
を増分Δ
ui+1
が補償する傾向になる。静的不安定性
右辺第1項のみを考える。点i近傍の初期摂動を
となる。つまり点iの摂動は
ε i
<0であるのに、対流による補償Δ
ui
<0となってしまい、摂動は単調に成長する。0 ,
0 ,
0 ,
0
1 21
> <
+>
+<
− i i i
i
ε ε ε
ε
とする。同様に、この初期摂動を
Δ
ui
の式に代入すると( ) 0
2
1−
1<
Δ Δ
−
=
Δ
i i+ i−x t u
u ε ε (
ただし、ε i + 1 ≥ ε i − 1 )
動的不安定性と静的不安定性
動的不安定性 静的不安定性
i-1 i i+1 i+2
ε
x
ε
i-1 i i+1 i+2 x
i-1 i i+1 i+2
ε
x
初期摂動
ゆらぎのない 差分解
Program: ADVDIF
熱伝導方程式の厳密解
― モデル問題5 -
( 0 1 )
2
2
≤ ≤
∂
= ∂
∂
∂ x
x u t
u
初期条件と境界条件:
( ) x x
u , 0 = sin π
( ) ( ) 0 , t = u 1 , t = 0 u
(解)
( ) x t e x
u , =
−π2tsin π
熱伝導方程式:Von Neumannの安定性解析(1/4)
熱伝導方程式に対するFTCSスキーム
( n i n )
n i n i
n i
i u d u u u
u + 1 = + + 1 − 2 + − 1
この方程式の解のFourier級数のそれぞれの部分を次式のよ うにする。
/ x 2
t d = α Δ Δ
x jki n
n
i V e
u = Δ
とする。V
n
は波数がkである成分の時刻nにおける振幅関数で ある。jは虚数単位である。Von Neumannの安定性解析(2/4)
θ ij n n
i V e
u =
( )
θθ n n i j
i ij
n n
i
V e u V e
u
+1=
+1,
±1=
±1θ
=kΔ
xとして上式を書き改めて、同様に
u
in+1, u
in+1, u
in−1 もそれぞれ、これらをFTCSスキームに代入する。
( )
[ 1 d e e 2 ]
V
V n
+1 = n + j θ +
−j θ −
Gをパラメータとすると、この式はV
n+1
=GVn
の形をしている。G を書き改めると( 1 cos θ )
2
1 − −
= d
G
:増幅行列Von Neumannの安定性解析(3/4)
熱伝導方程式のFTCSスキームが有界ならば
≤ 1 G
が全ての
θ
について成立しなければならない(安定規準) 。( 1 cos ) 1
2 1
1 ≤ − − ≤
− d θ
よって、左側の不等式の
1 − cos θ ≤ 2
に注意すると、2
≤ 1
d
あるいはα Δ Δ
2 t x
≤
2これが熱伝導方程式のFTCSスキームに対する安定性確保の 条件である。ここでdを拡散数(diffusion number)という。
Program: HEAT
拡散数の条件:Von Neumannの安定性解析(4/4)
2 4 1 . x 0
t d c
00125 .
0 t
19 x 1
2
≈ <
= ⋅
=
=
Δ Δ Δ
Δ
(計算例1) 安定な条件の場合
Program: HEAT
拡散数の条件についての計算例:(計算例2) 不安定な条件の場合
2 8 1 . x 0
t d c
002 . 0 t
22 x 1
2
≈ >
= ⋅
=
=
Δ Δ Δ
Δ
安定な差分スキーム: 完全陰解法
熱伝導方程式を時間に後退、空間に中心差分近似したスキーム
これらをスキームに代入して増幅行列Gを求めると、
( 1 1 1 1 )
1
1 + + 2 + − +
+ = i n + i n − i n + i n
n
i u d u u u
u
( ) θ
θ n n i j
i ij
n n
i V e u V e
u = ,
±+11=
+1 ±1 von Neumannの安定解析を行う。( )
[ 1 2 d 1 cos ]
2/ 1
G = + − θ
0 cos
1 ,
0 − ≥
> θ
d
であることからG ≤ 1
である。すなわち この差分スキームは、どのようなdに対しても、安定である。( )
( )
d a
a
d a
du u
u u
u du
u b
u u
u u
b Au
j i j
i i i
n T I n
I n
I n
n n
n
n T I n
n
m m
m m
−
=
= +
=
+ +
=
=
=
+ +
−
− +
− +
+
1 , ,
1 ,
1 2
4 3
1 2
1 1 1
3 1
2
2 1
L L
完全陰解法によるモデル計算例(問題5)
先の解析よりも変域の分割を多くする。
すなわち、i=1とi=I
m
を境界点、i=2,3,…
,Im
-1を内点とする。基礎式に対応する連立一次方程式は、境界条件を含めて
Program: HEAT
完全陰解法によるモデル計算例(問題5)
2 4 1 . x 0
t d c
00125 .
0 t
19 x 1
2
≈ <
= ⋅
=
=
Δ Δ Δ
Δ
(計算例1) 陽解法では安定 → 陰解法でも安定
Program: HEAT
完全陰解法による計算例:(計算例2) 陽解法では不安定 → 陰解法では安定
2 8 1 . x 0
t d c
002 . 0 t
22 x 1
2
≈ >
= ⋅
=
=
Δ Δ Δ
Δ
Courant条件(1/2)
対流方程式の風上差分スキームは
である。このスキームの安定性について吟味する。まず、数 値解のFourier成分をjを虚数単位として、
( u u ) C c t x
C u
u
in+1=
in−
in−
in−1, = Δ / Δ
x k e
V
u
in=
n ijθ, θ = Δ
とする。この式と( )
θθ n n i j
i ij
n n
i
V e u V e
u
+1=
+1,
±1=
±1を上述したスキームに代入して増幅行列Gを求める。
Courant条件(2/2)
増幅行列Gは、
となる。von Neumannの安定性規準は任意の
G
2= 2 C ( C − 1 )( 1 − cos θ ) + 1 θ
に対してとなることである。この式において、C>0、1-cos
θ
>0であるか ら、この条件を満足するためには、である。この条件をCourant条件という。
≤ 1 G
≤ 1 Δ
= Δ
x
c t
C
対流方程式の数値解の挙動ー モデル問題3 -
= 0
∂ + ∂
∂
∂
x c u t
u
対流方程式:
初期条件と境界条件:
( ) ( )
⎪ ⎩
⎪ ⎨
⎧
≤
≤
≤
≤
≤
≤
=
=
) 1 5
/ 2 ( 0
) 5 / 2 5
/ 1 ( 1
) 5 / 1 0
( 0 0
,
x x x x
F x
u
( ) 0 , t = g
0g
0= 0
u ( )
, 0
1 =
∂
∂ x
t u
(解)
u ( ) x , t = F ( x − ct ) Program: ADVEX
対流方程式の数値解析結果例(1/2)
1 8 . 025 0
. 0
02 . 1 0
C
02 . 0 t
025 . 0 x
1 c
<
=
×
=
=
=
= Δ Δ
(計算例1) 安定な条件の場合
Program: ADVEC
クーラン数の条件についての計算例:(計算例2) 不安定な条件の場合
1 04 . 025 1
. 0
026 . 1 0 C
026 . 0 t
025 . 0 x
1 c
>
=
×
=
=
=
=
Δ
Δ
対流方程式の数値解析結果例(2/2)
(計算例3) 厳密解と一致する場合
Program: ADVEC
クーラン数の条件についての計算例:025 1 . 0
025 . 1 0 C
0025 .
0 t
025 . 0 x
1 c
=
×
=
=
=
=
Δ
Δ
FTCSスキームの移動性
対流方程式のFTCSスキーム
( n i n )
i n
i n
i u u
x t u c
u 1 1 1
2 + −
+ −
Δ
− Δ
=
摂動
ε
が点i
にε i =δ
として存在し他の全ての点ではε=0
と仮定 する。まず、点i+1
における摂動は、( δ ) δ
x t c x
t u
inc
Δ
= Δ Δ −
− Δ
=
++
0 2 0 2
1 1
Δt
の間に、対流によって摂動が下流へ運ばれている。摂動の発生点iでは、
δ ( − ) = δ
Δ
− Δ
+
=
0 2 0
1
x t u
inc
上流点i-1では、
( δ ) δ
x t c x
t u
inc
Δ
− Δ
= Δ −
− Δ
+
=
−
0 2
0 2
1 1
摂動は上流へも運ばれている。
FTCSスキームにおける摂動の移動
dε d ε
ε
(1-2d) ε
ε‘
(1-4d+6d
2) ε
i-1 i i+1
n n+1
n+2
十分な時間
風上差分スキームの移動性(1/2)
拡散方程式の風上差分スキーム
( n i n )
i n
i n
i u u
x t u c
u + 1 − − 1
Δ
− Δ
=
この式に注目し点iでの摂動
ε
をε i
=δ
とし、他の全ての点で0と 仮定する。振動発生点iの下流i+1では( δ ) δ
x t c x
t u
inc
Δ
= Δ Δ −
− Δ
+
=
+11
0 0
となり、対流によって摂動が運ばれている。
風上差分スキームの移動性(2/2)
摂動の発生点iでは同じく、
となる。摂動が発生した上流点i-1では、
δ
δ x
t u i n c
Δ
− Δ
+1
=
となる。摂動の発生点では、摂動が減少し、その分だけ下流 の点に運ばれている。さらに上流点における摂動を調べると、
対流による寄与は何もない。
すなわち、このスキームは移動性を備えている。
( 0 0 ) 0
0 2
1
1
− =
Δ
− Δ
+
=
−
x
t u
inc
Program: TRANSP
風上差分スキームにおける摂動の移動
n
n+1
Δ δ Δ
x t c
0
Δ δ δ Δ
x t
− c
δ
差分法方程式の移動性の評価
対流方程式について、
3.風上差分: 移動性あり 2.Leap Frog : 移動性なし 1.FTCS: 移動性なし
Program: ADVDIF1
不安定
安定
不安定
FTCS(Forward-Time Centered Space)スキーム
差分式:
時間:前進差分、空間:中心差分で差分化
差分解
(
in 1)
n 1 i n
i 1 n
i
u u
2 u C
u
+= −
+−
−x 0 2
u c u
t u
u
in 1 in in 1 in 1− =
− +
+ −+
Δ Δ
x c t
C Δ
= Δ
Δx
Δt
i-1 i i+1
n n+1
t n-1
x Δx
Δt
i-1 i i+1
n n+1
t n-1
x
蛙とび ( Leapfrog ) スキーム
差分式
時間:中心差分、空間:中心差分
差分解
x 2
u c u
t 2
u
u
in 1 in 1 in 1 in1Δ
Δ
+ −−
+
−
−
− =
(
in 1 in1)
1 n i 1 n
i
u u
x c t u
u
+−
−= −
+−
−Δ
Δ
) u u
( C u
u
in+1=
in−1−
in+1−
in−1i-1 i i+1
n n+1
n-1
i-1 i i+1
n n+1
n-1
ひし形 ( Rhomboid ) スキーム
差分式
差分解
x u c u
t
) u u
2 ( ) 1 u u
2 ( 1
n 1 i n i 1
n 1 i n i n
1 i 1 n i
Δ
Δ
−−
−
−
+
−
−
− =
−
−
( ) ( ) (
in 1)
n i 1
n 1 i n i n
1 i 1 n
i
u u
x c t 2 u
u u
u
+−
−− −
−−= − −
−Δ Δ
(
in 1)
n i 1
n 1 i n i n
1 i 1 n
i
u u
x c t 2 u
u u
u
+=
−+ −
−−− −
−Δ
Δ
n 1 i n
i 1
n 1 i n i n
1 i 1 n
i
u u u 2 Cu 2 Cu
u
+=
−+ −
−−− +
−( 1 2 C ) ( u u )
u
u
in+1=
in−−11+ −
in−
in−1i-1 i i+1
n n+1
n-1
i-1 i i+1
n n+1
n-1
風上 ( Up-wind ) スキーム
差分式
時間:前進差分、空間:風上差分(この場合:後退差分)
差分解
x u c u
t u
u
in 1 in in in 1Δ
Δ
−+
−
−
− =
(
in1)
n i n
i 1 n
i
u u
x c t u
u
+− = − −
−Δ Δ
n 1 i n
i n
i 1 n
i
u Cu Cu
u
+= − +
−n 1 i n
i 1
n
i
( 1 C ) u Cu
u
+= − +
−Δ x
Δ t
i-1 i i+1
n n+1
t n-1
x
c ≧ 0
Δ x
Δ t
i-1 i i+1
n n+1
t n-1
x Δ x
Δ t
i-1 i i+1
n n+1
t n-1
x
c ≧ 0
FTCS Schemeによる計算例
-1 -0.5 0 0.5 1 1.5 2
0 0.2 0.4 X 0.6 0.8 1
U
0 0.02 0.04 0.06 0.08 0.1
-20 -15 -10 -5 0 5 10 15 20
0 0.2 0.4 0.6 0.8 1
X
U
0 s 0.2 s 0.4 s 0.6 s 0.8 s 1.0 s
-1E+14 -8E+13 -6E+13 -4E+13 -2E+13 0 2E+13 4E+13 6E+13 8E+13 1E+14
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8 1
-1 -0.5 0 0.5 1 1.5 2
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8 1
C=0.1 [c=1, TMAX=1000, XMAX=100]
C=0.001 [c=0.01, TMAX=1000, XMAX=100]
C=1.0 [c=1, TMAX=100, XMAX=100]
Leapfrog Schemeによる計算例
-0.5 0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 3
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
-1 -0.5 0 0.5 1 1.5 2
0 0.2 0.4 X 0.6 0.8 1
U
0 0.02 0.04 0.06 0.08
-1 -0.5 0 0.5 1 1.5 2
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
C=0.1 [c=1.0, TMAX=1000, XMAX=100]
C=1.0 [c=1, TMAX=100, XMAX=100] C=0.001 [c=0.01, TMAX=1000, XMAX=100]
Rhomboid Schemeによる計算例
0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.25 0.5 0.75 1
-0.5 0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
-0.5 0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.02 0.04 0.06 0.08
-0.5 0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
C=0.1 [c=1, TMAX=1000, XMAX=100]
C=0.5 [c=1.0, TMAX=200, XMAX=100] C=0.001 [c=0.01, TMAX=1000, XMAX=100]
( )
in111 n i n
1 i n i 1
n 1 i 1 n
i
u 1 2 C ( u u ) C 0 . 5 u u
u
+ = −− + − − − → = → + = −−Up-wind Schemeによる計算例
0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
C=0.1 [c=1,TMAX=1000,XMAX=100] C=1 [c=1, TMAX=100, XMAX=100]
C=0.01 [c=0.1, TMAX=1000, XMAX=100]
0 0.5 1 1.5
0 0.2 0.4 X 0.6 0.8 1
U
0 0.2 0.4 0.6 0.8
C=0.001 [c=0.01, TMAX=1000, XMAX=100]
n 1 i 1 n i n
1 i n
i 1
n
i
( 1 C ) u Cu C 1 u u
u
+ = − + − → = → + = −Newtonの粘性則
Newtonの粘性則
dy du
yx
μ
τ = −
2 2
x u x
P x
u u t
u
∂ + ∂
∂
− ∂
∂ = + ∂
∂
∂ ν
これは、流体に関する運動方程式に という形で 記述される。
ν ( ∂ 2 u / t ∂ 2 )
また、uを濃度とみたときには なる項は濃度の 拡散をなしている。
α ( ∂ 2 u / t ∂ 2 )
人工粘性
対流方程式
この式に対する風上差分スキームは
= 0
∂ + ∂
∂
∂
x c u t
u
( n i n )
i n
i n
i u C u u
u + 1 = − − − 1
点(i,n)まわりのTaylor展開を考えると
2 2
2 1
2
1 t
t t u
t u u
u
in inΔ
∂ + ∂
∂ Δ + ∂
+
=
2 2
2
1
2
1 x
x x u
x u u
u
in inΔ
∂ + ∂
∂ Δ
− ∂
−