h21年度・4日目(2009年8月29日(土)) 流体数...

154
1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」 H21年度・4日目 ( 2009年8月29日(土) ) 流体数値計算法 講師:名古屋工業大学・大学院工学研究科 教授 森西洋平

Upload: others

Post on 08-Mar-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

1

中部CAE懇話会:基礎講座

第7回(H21年度)「流体伝熱基礎講座」

H21年度・4日目 ( 2009年8月29日(土) )

流体数値計算法

講師:名古屋工業大学・大学院工学研究科

教授 森西洋平

Page 2: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

2

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 3: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

3

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 4: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

4

( ) 00 utu =

( ) ( )( ) ( )0, tttutFdt

tdu>=

目的:1階常微分方程式に対する時間進行法を理解する.

本章では変数 u(t) に関する次の1階常微分方程式の初期値

問題の時間進行法(数値時間積分法)を考える.

(1.1) 1階常微分方程式

(1.2) 初期条件

つまり,時間刻み幅毎の時間離散点上の値,

u(t0+Δt), u(t0+2Δt), u(t0+3Δt), ・・・

を,式(1.2)を初期条件として,式(1.1)を満足させながら求めたい.

第1章 時間進行法

Page 5: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

5

時間進行法を構築するため,まずu(t+Δt)をu(t)まわりに

テイラー展開して式(1.1)を使用すると次式を得る.

( ) ( ) ( ) ( ) ( ) ( )LL +

Δ++

Δ+

Δ+Δ+=Δ+ n

nn

dttud

nt

dttudt

dttudt

dttduttuttu

!!32 3

33

2

22

( ) ( )( ) ( )( ) ( )( )L+

Δ+

Δ+Δ+= 2

232 ,!3

,2

,dt

tutFdtdt

tutdFttuttFtu

( ) ( )( )( ) LL +

Δ+ −

1

1 ,! n

nn

dttutFd

nt

時間に関する離散点上の値を表現するため,

(1.3)

( )nn tuu =

( )( )nnn tutFF ,=

ttttnt nnn Δ+=Δ= +1,

の表記を使用する.以降も同様.

Page 6: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

6

t

u(t)

t n

Δt

Euler explicit

F n

t n+1

u(t)u n

u n+1

nnn F

図1.1 陽的オイラー法による時間進行

最も単純な時間進行法はテイラー展開の右辺第3項以降を打ち切って構成される陽的オイラー法である.

tuu ⋅Δ+=+1

( ) nnn

Ft

uu=

Δ−+1

あるいは,

陽的オイラー法では,tnにおける勾配Fnとunからun+1を計算する.

陽的オイラー法

Fdtdu

= に対する

Page 7: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

7

式(1.1)と陽的オイラー法をテイラー展開を通して比べると,打ち切誤差の初項がO(Δt1)となり,陽的オイラー法は1次

精度しか持たないことがわかる.

時間進行法の精度を向上させる方法として,

1)線形多段階法2)1段階法

がしばしは採用される.

Page 8: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

8

1)線形多段解法・un+1を計算する際に,時刻tnおよびtn+1での情報のみならず,さらに過去の情報(時刻tn-1,tn-2,… )も利用して高次精度

化を行う.・計算の出発点近傍で別の時間進行法を使用する必要があり,また時間刻み幅の変更が容易でないことに注意が必要.

・代表は,アダムス・バシュフォース(AB)公式アダムス・モルトン(AM)公式後退差分(BD)公式

2) 1段解法:・un+1を計算する際に,基本的に時刻tnでの情報(およびそれ

から計算される値)のみを利用して高次精度化を行うもの.・代表は,ルンゲ・クッタ(RK)法

以下本章ではこれら時間進行法を取り上げ紹介する.さらに,これら時間進行法の数値安定性についても示す.

Page 9: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

9

補足:式(1.1)の1階常微分方程式を扱う理由

流体運動の支配方程式は一般に偏微分方程式である輸送方程式として記述されるが,なぜ1階常微分方程式を扱うのかを説明する.

例として外力を伴う1次元移流拡散方程式を考える.

fxu

xuU

tu

+∂∂

+∂∂

−=∂∂

2

変数 u=u(t,x) が独立変数 t とx の双方に依存するので,この方程式は偏微分方程式である.またより一般的に,移流速度 U=U(t,x),拡散係数ν=ν(t,x) ,および外力 f=f(t,x) も時間と空間の双方に依存するもの

とする.

Page 10: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

10

ここで,空間に等間隔格子(xi=iΔx, 0≦i≦N+1)を使用し,離散値をu(t,xi)=ui(t)=ui のように表現し,空間2階微分を2次精度中心差分で近似する.

( )Nifx

uuuxuuU

dtdu

iiii

iii

ii ≤≤+

Δ+−

+Δ−

−= −+−+ 1,22 2

1111 ν

空間離散化後の変数はui=ui(t)なので偏微分が常微分に変わる.さらに変数をu=[u1,u2,…,uN]Tとベクトル表記し,端点i=0,Nに対する境界条件も含めて上式

を書き直すと次の離散システム方程式を得る.

( ) ( ) ( ) ( ) ( )( )ttFtttAdt

td ubuu ,=+=

A(t)は差分の係数を要素とする(N×N)の行列,b(t)は外力と境界条件を含むベ

クトルである.このように流体運動の支配方程式を空間離散化した後の時間発展方程式は基本的に式(1.1)の形となる.空間多次元の場合も同様である.

なお,離散システム方程式の変数はベクトル,式(1.1)の変数はスカラーであるが,時間進行法の構成に違いは生じない.

Page 11: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

11

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 12: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

12

1・1 線形多段階法

(N+1)段の線形多段階法(Linear multi-step methods)は一般に次式で記述される.ただしα1≠0.

∑ ∑−= −=

++ =Δ

1 11

Nj Nj

jnj

jnj Fu

tβα 線形多段階法の一般形

Fdtdu

= に対するもの

特に,α1=1,α0=-1, β1=0, αj (j≦-1)=0とすれば,アダムス・バシュフォース(Adams-Bashforth)公式

α1=1,α0=-1, β1≠0, αj (j≦-1)=0 とすれば,

アダムス・モルトン(Adams-Moulton)公式

α1≠1,β1=1, βj (j≦0)=0 とすれば,

後退差分(Backward-difference)公式

Page 13: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

13

t

u(t)

t n

Δt

Adams–Bashforth

F n

t n+1

u(t)

u n

u n+1

t n–1

F n–1

t n–2

F n–2

ΔtΔt

( ) ( )L+++=Δ

− −−

−−

+2

21

10

1nnn

nnFFF

tuu βββ

図1.2 アダムス・バシュフォース公式による時間進行

アダムス・バシュフォース公式

陽解法(β1=0)

Page 14: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

14

図1.3 アダムス・モルトン公式による時間進行

アダムス・モルトン公式

( ) ( )L++++=Δ

− −−

−−

++

22

110

11

1nnnn

nnFFFF

tuu ββββ

t

u(t)

t n

Δt

Adams–Moulton

F n

t n+1

u(t)

u n

u n+1

t n–1

F n–1

t n–2

F n–2

ΔtΔt

F n+1

陰解法(β1≠0)

Page 15: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

15

図1.4 後退差分公式による時間進行

後退差分公式

( ) 11

101

1 +−

−+

+++ nnnn

Ft

uuu Lααα

t

u(t)

t n

Δt

Backward–difference

t n+1

u(t)

u n

u n+1

t n–1t n–2

ΔtΔt

F n+1

u n–1

u n–2

陰解法(β1≠0)

※ 以下でそれぞれに対する4次精度までの公式を示す.

Page 16: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

16

1・1・1 アダムス・バシュフォース公式

時間1次精度から4次精度までのアダムス・バシュフォース(AB)公式は以下のとおりである.

( ) nnn

Ft

uu=

Δ−+1

( ) ( )11

321 −

+−=

Δ− nn

nnFF

tuu

( ) ( )211

51623121 −−

++−=

Δ− nnn

nnFFF

tuu

( ) ( )3211

9375955241 −−−

+−+−=

Δ− nnnn

nnFFFF

tuu

1次精度の公式(AB1)は陽的オイラー法である.特に精度が明示されていない場合,流体計算では2次精度の公式(AB2)をアダムス・バシュフォース法と称する場合が多い.

陽的オイラー法(AB1)

AB2 (アダムス・バシュフォース法)

AB3

AB4

Page 17: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

17

補足:AB公式の導出(1/3)

( ) ( ) 022

110

1=+++−

Δ− −

−−

+Lnnn

nnFFF

tuu βββ

とおき,時刻tnまわりのテイラー展開,

( )L+Δ+Δ+Δ+=

Δ−+

33

32

2

21

241

61

21 t

dtFdt

dtFdt

dtdFF

tuu

nnnn

nn

( ) ( ) ( ) LL ,2,1,0,61

21 3

3

32

2

2=+Δ−Δ+Δ−=− qtq

dtFdtq

dtFdtq

dtdFFF

nnnnqn

から,AB公式が指定した時間精度(2次精度ならばO(Δt2))で近似されるように係数β0, β-1, β-2,・・・を定める.

AB公式を,

Page 18: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

18

補足:AB公式の導出(2/3)

例として2次精度アダムス・バシュフォース法(AB2)を取り上げる.

( ) 0110

1=−−

Δ− −

+nn

nnFF

tuu ββ

AB2の係数β0 ,β-1 を定めるためテイラー表を利用する.

( )

1111

1

00

1

22

2

210061

211/

−−−−

−+−−

−−

+++Δ−

ΔΔ

ββββ

ββn

n

nn

nnn

F

F

tuu

tdt

FdtdtdFF

O(Δt0)とO(Δt1)の列それぞれの係数の合計を0とする2つの条件から,

係数β0 ,β-1 に対する連立方程式が得られる.

Page 19: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

19

補足:AB公式の導出(3/3)

係数β0 ,β-1 に対する連立方程式

⎪⎩

⎪⎨⎧

−=

=+

21

1

1

10

β

ββ

これを解きβ0 =3/2, β-1=-1/2を得る.これはAB2公式を与える.

( ) ( )11

321 −

+−=

Δ− nn

nnFF

tuu

なお,テイラー表の3列目(O(Δt2) )の合計はAB2公式の打切り誤差

の初項εを与える.

AB2 (アダムス・バシュフォース法)

)(125

21

61 22

2

22

2

2

1 tOtdt

Fdtdt

Fdnn

Δ=Δ=Δ⎟⎠⎞

⎜⎝⎛ −= −βε

Page 20: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

20

補足:陽解法による計算

陽解法は既知量の単純代入計算のみで時間進行が行えるので計算コードの作成が容易であり,また陰解法に比べて時間ステップあたりの計算量が非常に少なくて済む.

例えばAB2は実際には次の形で使用される.

( )11 32

−+ −Δ

+= nnnn FFtuu

これは既知量(時刻tn以前の量)の単純代入計算のみで未知量un+1

が得られることを意味し,1時間ステップの進行に繰り返し計算を必要としない.

このような時間進行法は陽解法と呼ばれる.

AB公式陽的RK法

Page 21: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

21

1・1・2 アダムス・モルトン公式

時間1次精度から4次精度までのアダムス・モルトン(AM)公式は以下のとおりである.

1次精度の公式(AM1)は陰的オイラー法であり,2次精度の公式(AM2)は通常クランク・ニコルソン(Crank-Nicolson, CN)法と呼ばれる.AM公式はun+1の値を得るためにFn+1=F(un+1)を必要と

するが,このような時間進行法は陰解法と呼ばれる.

陰的オイラー法(AM1)

クランク・ニコルソン法(AB2)

AM3

AM4

( ) 1nn1n

Ft

uu ++

=−

Δ

( ) ( )n1nn1n

FF21

tuu

+=− +

+

Δ

( ) ( )1nn1nn1n

FF8F5121

tuu −+

+−+=

−Δ

( ) ( )2n1nn1nn1n

FF5F19F9241

tuu −−+

++−+=

−Δ

Page 22: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

22

補足:AM公式の導出(1/3)

( ) ( ) 0110

11

1=+++−

Δ− −

−+

+Lnnn

nnFFF

tuu βββ

とおき,時刻tnまわりのテイラー展開,

( )L+Δ+Δ+Δ+=

Δ−+

33

32

2

21

241

61

21 t

dtFdt

dtFdt

dtdFF

tuu

nnnn

nn

( ) ( ) ( ) LL ,2,1,0,61

21 3

3

32

2

2=+Δ−Δ+Δ−=− qtq

dtFdtq

dtFdtq

dtdFFF

nnnnqn

から,AM公式が指定した時間精度(2次精度ならばO(Δt2))で近似さ

れるように係数β1,β0, β-1, ・・・を定める.

AM公式を,

L+Δ+Δ+Δ+=+ 33

32

2

21

61

21 t

dtFdt

dtFdt

dtdFFF

nnnnn

Page 23: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

23

補足:AM公式の導出(2/3)

例としてクランク・ニコルソン法(AM2)を取り上げる.

AM2の係数β1 ,β0 を定めるためテイラー表を利用する.

O(Δt0)とO(Δt1)の列それぞれの係数の合計を0とする2つの条件から,

係数β1,β0 に対する連立方程式が得られる.

( ) 001

1

1=−−

Δ− +

+nn

nnFF

tuu ββ

( )

0021

61

211/

00

1111

1

1

22

2

ββ

ββββ

−−

−−−−

+++Δ−

ΔΔ

+

n

n

nn

nnn

F

F

tuu

tdt

FdtdtdFF

Page 24: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

24

補足:AM公式の導出(3/3)

係数β1 ,β0 に対する連立方程式

⎪⎩

⎪⎨⎧

=

=+

21

1

1

10

β

ββ

これを解きβ1 =β0=1/2を得る.これはクランク・ニコルソン法(AM2)

を与える.

( ) ( )nnnn

FFt

uu+=

Δ− +

+1

1

21

なお,テイラー表の3列目(O(Δt2) )の合計はクランク・ニコルソ

ン法の打切り誤差の初項εを与える.

クランク・ニコルソン法(AB2)

)(121

21

61 22

2

22

2

2

1 tOtdt

Fdtdt

Fdnn

Δ=Δ−=Δ⎟⎠⎞

⎜⎝⎛ −= βε

Page 25: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

25

補足:陰解法による計算

例えばクランク・ニコルソン法(AM2)は実際には上式を変形した次の形で使用される

右辺は既知量であるが左辺は未知量un+1を含む関数であり,上式を

満足するun+1を特定するために通常繰り返し計算が必要となる.

このような時間進行法は陰解法と呼ばれる.

AM公式後退差分公式陰的RK法

( ) ( )nnn1n1n1n utF2tuutF

2tu ,, ΔΔ

+=− +++

Page 26: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

26

1・1・3 後退差分公式

時間1次精度から4次精度までの後退差分(BD)公式は以下のとおりである.

1次精度の公式(BD1)は陰的オイラー法である.これら後退差分公式はギアー(Gear)法と呼ばれることもある.BD公式も陰解法である.

陰的オイラー法(BD1)

BD2

BD3

BD4

( ) 1nn1n

Ft

uu ++

=−

Δ

( ) 1n1nn1n

Ft2

uu4u3 +−+

=+−

Δ

( ) 1n2n1nn1n

Ft6

u2u9u18u11 +−−+

=−+−

Δ

( ) 1n3n2n1nn1n

Ft12

u3u16u36u48u25 +−−−+

=+−+−

Δ

Page 27: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

27

補足:BD公式の導出(1/3)

とおき,時刻tn+1まわりのテイラー展開,

から,BD公式が指定した時間精度(2次精度ならばO(Δt2))で近似さ

れるように係数α1,α0,α-1,α-2,・・・を定める.

BD公式を,

( )01

22

110

11 =−

Δ++++ +

−−

−−

+n

nnnn

Ft

uuuu Lαααα

( ) ( )[ ] ( )[ ] L+Δ+−Δ++Δ+−=+++

+− 31

3

32

1

2

211 1

611

211 tq

dtudtq

dtudtq

dtduuu

nnnnqn

( ) ( )[ ] ( )[ ] L+Δ+−Δ++Δ+−=++

++ 31

2

22

111 1

611

211 tq

dtFdtq

dtdFtqFu

nnnn

L,2,1,0=q

Page 28: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

28

補足:BD公式の導出(2/3)

例として2次精度後退差分公式(BD2)を取り上げる.

BD2の係数α1,α0,α-1を定めるためテイラー表を利用する.

O(Δt-1), O(Δt0),およびO(Δt1)の列それぞれの係数の合計を0とする3

つの条件から,係数α1,α0,α-1 に対する連立方程式が得られる.

( )01

110

11 =−

Δ++ +

−−

+n

nnn

Ft

uuu ααα

00106822/61

21/

000/

1

11111

1

00000

11

1

21

2

211

1

−−

−−+Δ

−+−+Δ

ΔΔΔ

+

−−−−−

+

+++

+

n

n

n

n

nnn

n

F

tu

tu

tu

tdt

FdtdtdFF

tu

ααααα

ααααα

αα

Page 29: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

29

補足:BD公式の導出(3/3)

係数α1,α0,α-1 に対する連立方程式

これを解きα1=3/2,α0=-2,α-1=1/2 を得る.これはBD2公式を与える.

なお,テイラー表の4列目(O(Δt2) )の合計はBD2公式の打切り誤差

の初項εを与える.

BD2

⎪⎩

⎪⎨

=+−=+=++

04120

10

10

101

αααα

ααα

( ) 111

243 +

−+

+− nnnn

Ft

uuu

( ))(

31

68 22

1

2

22

1

2

210 tOt

dtFdt

dtFd

nn

Δ=Δ−=Δ+

−=++

−ααε

Page 30: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

30

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 31: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

31

1・2 ルンゲ・クッタ法

式(1.1)を時間進行するための s 段ルンゲ・クッタ法(Runge-Kutta method) の一般公式は次式で与えられる.

( ) ( )

( )⎪⎪⎩

⎪⎪⎨

Δ+Δ+=

≤≤Δ+Δ+=

=

+

=s

i

ii

ni

nn

jj

ns

jij

ni

utctFbtuu

siutctFatuu

1

)(1

)(

1

)(

,

1,,

ただし,係数に対し

( )siacs

jiji ≤≤= ∑

=1,

1

(1.2.1)

の条件を与える.

(1.2.2)

係数bi, ci,および aij は要求精度を満たすように式(1.1)の

テイラー展開との比較から決定される.

( ) ( )( ) ( 0, tttutFd

)ttdu

>=

( ) 00 utu =

(1.1)

(1.2)

Page 32: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

32

RK法の係数は次のブッチャー配列(Butcher tableau)で表現すると便利である.

s

sssss

s

s

bbbaaac

aaacaaac

L

L

MOMMM

L

L

21

21

222212

112111

(1.2.3)

s段RK法のブッチャー配列

TAb

c

Page 33: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

33

( ) ( ) 277665443211010987654321

−≤≥

sspspss

なお,j≧i に対してaij=0とするものを(陽的)RK法と呼ぶ.s 段(陽的)RK法の到達可能精度p(s)は次表となることが知られている.

精度と計算量の兼ね合いからは4段4次精度公式が最も効率が良いことがわかる.

また,j>iに対してaij=0とするものを半陰的RK法と呼ぶ.s段半陰的RK法の到達可能精度はp(s)=(s+1)となることが知られている.

さらに,あるj>iについてaij≠0のものを陰的RK法と呼ぶが,s段陰的RK法の到達可能精度はp(s)=2sである.

Page 34: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

34

補足:

係数に対する条件式(1.2.2)に対しての必然性はないが,このように設定すると扱い易い形となるので,通常この条件を加える.

また,常微分方程式の数値解法の教科書におけるRK法の一般公式は式(1.2.1)よりも次式によるものが多い.

しかしここでは,計算流体力学への応用における明快性から式(1.2.1)を一般公式として採用する.

( )

⎪⎪⎩

⎪⎪⎨

Δ+=

≤≤⎟⎟⎠

⎞⎜⎜⎝

⎛Δ+Δ+=

=

+

=s

iii

nn

s

jjij

ni

ni

Kbtuu

siKatutctFK

1

1

11,,

Page 35: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

35

1・2・1 陽的ルンゲ・クッタ法

陽的RK法はj>iに対してaij=0と設定するものであり,s段陽

的RK法に対するブッチャー配列は以下となる.

陽的RK法のブッチャー配列

ss

sssss

bbbbaaac

aacac

121

121

32313

212

0

0000000

L

L

MOOMMM

L

LL

LLL

Page 36: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

36

この場合(c1=0として),( ) ( )sitctt i

ni ≤≤Δ+= 1,

( ) ( ) ( )( ) ( )siutFF iii ≤≤= 1,,

と記述すると,s段陽的RK法は次のように表現できる(更新方式).

( ) ( )

( ) ( ) ( ) ( )

( )⎪⎪⎪⎪

⎪⎪⎪⎪

Δ+=

≤≤Δ+=+=

==

=

+

=s

i

ii

nn

ini

1i

j

jij

ni

nn

Fbtuu

sitcttFaΔtuu

ttuu

1

1

1

11

2,,

,

なおこの公式から,ciはi段目の計算時点でのtからt+Δtの間

の到達割合いを意味することがわかる.

Page 37: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

37

以下4次精度までの陽的RK法の公式の具体例を挙げる.

まず,陽的オイラー法は1段1次精度陽的RK法(RK1)と見なすことができ,対応するブッチャー配列と計算式は

100

⎪⎩

⎪⎨⎧

⋅Δ+=

==+ )1(1

)1()1( ,

Ftuu

ttuunn

nn

1

111bac

となる.これが陽的オイラー法

nnn Ftuu ⋅Δ+=+1

と一致することは容易に理解できる.

Page 38: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

38

2段2次精度陽的RK法(RK2)

2段陽的RK法の一般形は次式で与えられる.( ) ( )

( ) ( ) ( )

( ) ( )( )⎪⎩

⎪⎨

++=Δ+=⋅+=

==

+ 22

11

12

2121

2

11

,,

FbFbΔtuutcttFaΔtuu

ttuu

nn

nn

nn

ここでb2=αを自由パラメータに選ぶと,2段2次精度陽的

RK法(RK2)に対する係数のブッチャー配列は以下で与えられる.

αααα

−=

10)2/(1)2/(1000

0000

21

212

bbac

RK2の一般係数(αは自由パラメータ)

Page 39: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

39

特に,α=1の場合を修正オイラー法,α=1/2の場合をHeun法(改良オイラー法)と呼ぶ.またα=3/4の場合はRalstonの最適公式である.

1002/12/1000

2/12/1011000

4/34/103/23/2000

修正オイラー法(α=1) 改良オイラー法(α=1/2) Ralstonの最適公式(α=3/4)

t

u(t)

t n t n+1

RK2

un+1

u(2)=

u(1)

un

t(2)

t(1)

=

F (1)F (2)

Δt/2

u(t)

(α=1, Modified Euler)

Δt/2

図1.5 RK2(修正オイラー法)による時間進行

Page 40: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

40

補足:RK2の係数(1/3)

と書ける.ただし,F=F(t,u(t)),Fu=∂F/∂u,および

とする.これより,u(t+Δt)のテイラー展開は次式で記述される.

まずF=F(t, u(t))の時間微分は,

Fdtdu

= DFdt

ud2

2= ( ) u

23

3FDFFD

dtud

+=

( ) ( ) ( ) u2

uu23

4

4DFDF3FDFFFDFD

dtud

+++=

, , ,

uF

tD

∂∂

+∂∂

=2

22

2

2

22

uF

utF2

tD

∂+

∂∂∂

+∂

∂=

3

33

2

32

2

3

3

33 33

uF

utF

utF

tD

∂+

∂∂

∂+

∂∂

∂+

∂=

, ,

( ) ( ) ( )[ ]uFDFFDtDFttFtuttu +Δ

+Δ+=Δ+ 232

!32

( ) ( ) ( )[ ] L++++Δ

+ DFDFFDFFFDFDtuu 3

!4223

4

Page 41: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

41

補足:RK2の係数(2/3)

これをRK2の時間進行の式,un+1=un+Δt(b1F(1)+b2F(2)),に代入すると,

RK2は

次に,RK2の一般公式におけるF(1),F(2)をtn=tおよびun=u(t)まわりに

テイラー展開すると次式を得る.

FF =)1(

( )( ))1(212

)2( , FtatutctFF Δ+Δ+=

L+⎟⎠⎞

⎜⎝⎛

∂∂

+∂∂Δ

+⎟⎠⎞

⎜⎝⎛

∂∂

+∂∂

Δ+= Fu

Fat

ctFu

Fat

ctF2

212

2

212 2

( ) ( ) ( ) ( ) L++Δ++Δ+=Δ+ ut FFabFcbtFbbttuttu 212222

21

の計算を行っていることに対応する.ただしFt=∂F/∂tである.

これをu(t+Δt)のテイラー展開と比較してO(Δt2)まで係数を一致させ,

さらに式(1.2.2)の条件も加えると,RK2の係数に対する条件式を得る.

Page 42: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

42

補足:RK2の係数(3/3)

RK2の係数に対する条件式

これは自由度1の連立方程式(式3つ,変数4つ)であるので,b2=αを自由パラメータとして係数の解を表現すると

c2=a21=1/(2α) ,

b1=1-α

を得る.

212 ac =

121 =+ bb

2/122 =cb

Page 43: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

43

3段3次精度陽的RK法(RK3)

3段陽的RK法の一般形は次式で与えられる.

3段陽的RK法に対する係数のブッチャー配列は以下となる.

3段陽的RK法のブッチャー配列

( ) ( )

( ) ( ) ( )

( ) ( ) ( )( ) ( )

( ) ( ) ( )( )⎪⎪⎩

⎪⎪⎨

+++=Δ+=++=Δ+=⋅+=

==

+ ,,

,,

33

22

11

13

3232

131

32

2121

2

11

FbFbFbΔtuutcttFaFaΔtuutcttFaΔtuu

ttuu

nn

nn

nn

nn

321

32313

212

0000000

bbbaac

ac

Page 44: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

44

代表的な3段3次精度RK法(RK3)に対する係数のブッチャー配列を挙げておく.

古典的RK3(c2=1/2,c3=1) HeunのRK3(c2=1/4,c3=2/3) RalstonのRK3(c2=1/2,c3=3/4)

6/13/26/10211002/12/10000

−4/304/1

09/89/23/2004/14/10000

9/43/19/204/304/3002/12/10000

4/304/1012/54/13/20015/815/80000

7/47/3004/714/3006/16/10000

−15/810/36/1016/1516/34/3003/13/10000

WrayのRK3(c2=8/15,c3=2/3) b1=0となるRK3(c2=1/6,c3=3/4) WilliamsonのRK3(c2=1/3,c3=3/4)

これらのうち,b1=0となるRK3は更新方式における低容量型RK3で

ある.つまりb1=0によってun+1の計算にF(1)が必要なくなるので,更新計

算において他のRK3公式よりも配列を1つ減らせる.WrayのRK3は積み上げ方式における低容量型RK3である.WilliamsonのRK3は,Williamsonの計算法に従えば低容量(2N容量)型となるRK3である.

Page 45: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

45

補足:RK3の係数(1/3)

これは自由度2の連立方程式(式6つ,変数8つ)である.

RK2と同様にしてRK3に対する係数の条件式も得られる.

212 ac =

32313 aac +=

1321 =++ bbb

2/13322 =+ cbcb

3/1233

222 =+ cbcb

6/12323 =cab

Page 46: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

46

補足:RK3の係数(2/2)

を得る.

また,b3=α≠0を自由パラメータとして,以下の解が知られている.

c2とc3を自由パラメータとして係数の解を表現すると,c2≠c3,c2≠0,c2≠2/3 に対して

221 ca =

( )2

322

2

331 32

13c

ccccc

a−

−−×=

2

23

2

332 32 c

cccc

a−−

×=

( )32

321 6

231

cccc

b−+

−= ( )232

32 6

23ccc

cb

−−

= ( )233

23 6

32ccc

cb

−−

=

, ,

αααα−

−4/34/1

0)4/(1)4/(13/23/2003/23/20000

αααα4/34/1

0)4/(1)4/(10003/23/20000

−−

Page 47: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

47

4段4次精度陽的RK法(RK4)

4段陽的RK法の一般形は次式で与えられる.

4段陽的RK法に対する係数のブッチャー配列は以下となる.

4段陽的RK法のブッチャー配列

( ) ( )

( ) ( ) ( )

( ) ( ) ( )( ) ( )

( ) ( ) ( ) ( )( ) ( )

( ) ( ) ( ) ( )( )⎪⎪⎪

⎪⎪⎪

++++=Δ+=+++=Δ+=++=Δ+=⋅+=

==

+ 44

33

22

11

14

4343

242

141

43

3232

131

32

2121

2

11

,,

,,

FbFbFbFbΔtuutcttFaFaFaΔtuutcttFaFaΔtuutcttFaΔtuu

ttuu

nn

nn

nn

nn

nn

4321

4342414

32313

212

00000000000

bbbbaaac

aacac

Page 48: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

48

4次精度を満足する4段陽的RK法の係数の一般解はいくつか知られているが,ここでは代表的な4段4次精度RK法(RK4)に対する係数のブッチャー配列を挙げておく.

古典的RK4 KuttaのRK4(Kuttaの3/8公式)

GillのRK4

6/13/13/16/101001002/102/10002/12/100000

8/18/38/38/1011110013/13/20003/13/100000

−−

( ) ( )( )

( ) ( ) 6/16/226/226/102/222/201002/222/122/10002/12/100000

+−+−

−−

Page 49: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

49

補足:RK4の係数(1/3)

RK2あるいはRK3と同様にしてRK4に対する係数の条件式も得られる.

212 ac

これは自由度2の連立方程式(式11,変数13)である.

=

32313 aac +=

4342414 aaac ++=

14321 =+++ bbbb

2/1443322 =++ cbcbcb

3/1244

233

222 =++ cbcbcb

4/1344

333

322 =++ cbcbcb

( ) 6/134324242323 =++ cacabcab

( ) 12/12343

22424

22323 =++ cacabcab

( ) 8/14343242432323 =++ ccacabccab

24/1232434 =caab

Page 50: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

50

補足:RK4の係数(2/3)

を得る.この解はc2=1/3,c3=2/3でKuttaのRK4を与える.

まず c2とc3を自由パラメータとし,c2c3(c2-1)(c3-1)(c2-c3)≠0の場合につい

てRK4の係数の解を表現すると,

14 =c 221 ca =( )

( )22

22323

31 21243

cccccca

−−−

=( )( )22

23332 212 cc

ccca−−

=

( ) ( )[ ]( ) ( )[ ]3462

12113232232

23322

42 ++−−−−−+−

=ccccccc

cccca ( )( )( )( ) ( )[ ]346

1121

3232233

32243 ++−−

−−−=

cccccccccca

( )32

321 12

2121

ccccb +−

+= ( )( )2232

32 112

12cccc

cb−−

−= ( )( )3233

23 112

21cccc

cb−−

−=

( )434241 1 aaa +−= ( )3214 1 bbbb ++−=また, ,

, , ,

, ,

Page 51: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

51

補足:RK4の係数(3/3)

この解はα=1/3で古典的RK4,α=(2+√2)/6でGillのRK4を与える.他にも4つの1パラメータ解が知られているが,そのうちの2つを示しておく(ただしα≠0).

c2=c3=1/2に対してはb3=α≠0を自由パラメータとする次の1パラメータ

解が知られている.

6/13/26/103310100)6/(1)6/(12/12/10002/12/100000

αααα

αα

−−

ααααα3/26/16/1

0)3/(1)12/(1)4/(111008/18/32/10001100000

−−−

6/13/26/1062/362/1100)12/(1)12/(100002/12/100000

αααα

αα

−−−

Page 52: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

52

1・2・2 陰的ルンゲ・クッタ法

陰的RK法はあるj>iについてaij≠0なので,基本的に式

(1.2.1)をそのまま適用する必要がある.例えば2段陰的RK法に対するブッチャー配列と計算式は

21

22212

12111

bbaacaac

( ) ( ){ }( ) ( ){ }⎪⎩

⎪⎨⎧

Δ++Δ+Δ+=

Δ++Δ+Δ+=)2(

222)1(

121)2(

)2(212

)1(111

)1(

,,,,

utctFautctFatuuutctFautctFatuu

nnn

nnn

( ) ( ){ })2(22

)1(11

1 ,, utctFbutctFbtuu nnnn Δ++Δ+Δ+=+

および

であり,u(1)とu(2)の連立方程式を解いた後にun+1を計算する.一般にs段陰的RK法ではu(1), u(2), …, u(s)の連立方程式を

ニュートン法等の繰り返し法で時間ステップ毎に解く必要があり計算量が膨大となる.

Page 53: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

53

半陰的RK法はj>iについてaij=0と設定するものであり,例

えば2段半陰的RK法に対するブッチャー配列と計算式は

( ) ( ){ })2(22

)1(11

1 ,, utctFbutctFbtuu nnnn Δ++Δ+Δ+=+

および

となる.この場合はu(1)およびu(2)に対する単独の陰的方程式を順番に解いた後にun+1を計算すれば良いので,1段あたり

の計算負荷はAM法と同程度となる.

陰的RK法はs段で最大2s次精度まで,半陰的RK法ではs段で最大(s+1)次精度まで到達可能である.

21

22212

111 0

bbaac

ac

( ))1(111

)1( , utctFatuu nn Δ+⋅Δ+=

( ) ( ){ })2(222

)1(121

)2( ,, utctFautctFatuu nnn Δ++Δ+Δ+=

Page 54: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

54

陰的RK法(IRK法)および半陰的RK法(SIRK法)の例を挙げておく.

陰的オイラー法(1段1次IRK法) 陰的中点則(1段2次精度IRK法) CN法(2段2次SIRK法)

2段4次IRK法 2段3次SIRK法(ノルセット法)

111

12/12/1

2/12/12/12/11

000

( ) ( )( ) ( )

2/12/14/112/3236/33

12/3234/16/33++

−− ( ) ( )( ) ( )

2/12/16/333/36/33

06/336/33+−−

++

3段6次IRK法

( )

( )18/59/418/536/515/159/230/1536/510/155

24/1536/59/224/1536/52/130/1536/515/159/236/510/155

+++−+−−−

Page 55: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

55

ここで,陰的オイラー法,陰的中点法,クランク・ニコルソン法(CN法)について補足しておく.

陰的オイラー法は1段1次精度陰的RK法とみなせ,ブッチャー配列と計算式はそれぞれ,

と記述できる.この場合の2つの計算式は等価でu(1)=un+1であり,これ

を用いるとAM公式での陰的オイラー法,

11 ++ ⋅Δ+= nnn Ftuu

が得られる.

111

( ))1()1( , uttFtuu nn Δ+⋅Δ+=

( ))1(1 , uttFtuu nnn Δ+⋅Δ+=+

および

Page 56: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

56

陰的中点則は1段2次精度陰的RK法とみなせ,ブッチャー配列と計算式はそれぞれ,

と記述できる.2つの計算式を比べるとu(1)=(un+1+un)/2となっており,

これが陰的中点則,

であることがわかる.

および

12/12/1

⎟⎠⎞

⎜⎝⎛ Δ

+= )1()1( ,22

uttFtuu nn

⎟⎠⎞

⎜⎝⎛ Δ

+⋅Δ+=+ )1(1 ,2

uttFtuu nnn

⎟⎟⎠

⎞⎜⎜⎝

⎛ +Δ+⋅Δ+=

++

2,

2

11

nnnnn uuttFtuu

Page 57: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

57

クランク・ニコルソン法(CN法)は2段2次精度陰的RK法とみなせ,ブッチャー配列と計算式はそれぞれ,

と記述できる.この場合 u(1)=un,u(2)=un+1であり,これがAM公式でのク

ランク・ニコルソン法,

であることがわかる.

および

12/12/1

( )nnnn FFtuu +Δ

+= ++ 112

nuu =)1(

( ) ( ))2()1()2( ,2

,2

uttFtutFtuu nnn Δ+Δ

+=

( ) ( ))2()1(1 ,2

,2

uttFtutFtuu nnnn Δ+Δ

+=+

Page 58: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

58

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 59: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

59

1・3 時間進行法の安定性解析

線形テスト問題

に対する時間進行法の数値安定性を考える.まずこの問題の解析解は

で与えられ,λR≦0ならばt>0でu(t)は有界となる.

udtdu λ=

( ) 00 uu =

, IR iλλλ +=

( ) tIitRt eeueutu ⋅⋅⋅ == λλλ00

–2 –1 0 1 2–2

–1

0

1

2

λ R

λ I

Stable Unstable

図1.6 線形テスト問題の安定領域(複素平面)

Page 60: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

60

補足:なぜ線形テスト問題を考えるのか(1/2)

流体運動の支配方程式は輸送方程式であるので,その本質を表現するモデル方程式(1次元の移流・拡散方程式の空間離散式)を考える.

2

2

xu

xuU

dtdu

δδν

δδ

+−=

ここで,U:移流速度

ν:拡散係数δ/δx:∂/∂x に対する空間離散オペレータ

解析的な扱いを容易にするため,x方向に周期的な場を仮定し,離散フー

リエ変換を導入する.

( ) ( ) ( )[ ] ( ) xNLkL

kNNkxkitxutu xx

jN

jjk Δ⋅==−−=−= ∑

=,212/2/,exp,ˆ

1

0

πωω ,~

( ) ( ) ( )[ ] 10,expˆ,12/

2/−=+= ∑

−=Njxkitutxu j

N

Nkkj ~ω

Page 61: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

61

補足:なぜ線形テスト問題を考えるのか(2/2)

ここで,ω’(k)とω”(k) は空間1階および2階微分に対する離散オペレー

タの修正波数で,空間離散化手法に応じて定まる.例えば,

離散フーリエ変換によりモデル方程式を対角化する.

( ) ( ) ( )[ ] ( ) 12/2/,ˆˆ−−=′−′′−= NNkkukiUk

dttud

kk ~ωων

( ) ( ) ( ) ( )2, kkkk ωωωω =′′=′

( ) ( )( ) ( ) ( )( )( )2

2

2/2/sin,sin

xxkk

xxkk

Δ

Δ=′′

ΔΔ

=′ ωωωω

フーリエ・スペクトル法:

2次精度中心差分:

以上より,モデル方程式は線形テスト問題(固有値問題)に帰着され,固有値の実部は拡散項に,固有値の虚部は移流項に関係することが理解される.

( ) ( ) ( ) ( )kUkitudt

tudk

Ik

Rk

Ik

Rkkk

k ωλωνλλλλλ ′−=′′−=+== ,,,ˆˆ

なお,純粋移流問題の安定性はω’(k)の最大値,純粋拡散問題の安定性はω”(k)の最大値に対応して定まる.

Page 62: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

62

線形テスト問題の解の有界性が数値計算においてどのような条件で満足されるかを検討するため,まず陽的オイラー法を線形テスト問題に適用してみる.

( ) ( ) nnnn ututuu Δ+=⋅Δ+=+ λλ 11

この操作は,初期値u0=u0,数値解の複素増幅率をξとして

0uu nn ξ=

と記述するとき,陽的オイラー法の複素増幅率が

( )z+= 1ξ ,ただし tz Δ= λ

となることを意味する.ここでz=λΔt=λRΔt+iλIΔtとしている.

Page 63: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

63

これから明らかなとおり,陽的オイラー法による数値解が有界であるための条件は

11 ≤+= zξ

で与えられる.これを満足するzは複素平面において(-1,0i)を中心とする半径1

の円の内側に存在する.この領域を陽的オイラー法の絶対安定領域と呼ぶ.これは,陽的オイラー法を用いて安定な数値解を得るためには,時間刻み幅の設定に制限があることを示している.具体的には,λを負の実数とすると

λ−≤Δ

2t

の範囲に時間刻み幅Δtを設定する必要

がある.

–3 –2 –1 0 1–2

–1

0

1

2

λ RΔ tλ

I Δ t

Euler explicitUnstable

Stable

図1.7 陽的オイラー法の絶対安定領域

Page 64: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

64

次に,陰的オイラー法を線形テスト問題に適用し絶対安定領域を調べる.

( )11 ++ ⋅Δ+= nnn utuu λ

これより,陰的オイラー法の複素増幅率ξは次式で与えられる.

,ただし tz Δ= λ( )z−=

11ξ

これに対応する絶対安定領域は次式で与えられる.

11

1≤

−=

これを満足するzは複素平面において(-1,0i)を中心とする半径1の円の外

側の全領域である.この領域はλR≦0となる複素平面の左半分を全

て含むので,陰的オイラー法はλR≦0に対し時間刻み幅Δtによらず

無条件安定な数値解を与える.

–1 0 1 2 3–2

–1

0

1

2

λ RΔ t

λ I Δ

t

Euler implicit

UnstableStable

図1.8 陰的オイラー法の絶対安定領域

Page 65: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

65

なお,絶対安定の緩和表現として,絶対安定領域が複素平面上で無限扇形領域

{z; -α < (π-arg z) < α} (0<α<π/2)を含む場合,A(α) 安定と呼ぶ.

Re(z)

α

α

O

Im(z)

StableUnstable

陰的オイラー法のように絶対安定領域が複素平面の左半分(λR≦0)全てを含む時間進行法はA安定(絶対安定)という.

図1.9 A(α)安定

ところで,陽的オイラー法および陰的オイラー法は1次精度の時間進行法であるため打ち切り誤差の影響が懸念される

Page 66: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

66

そこで2次精度の時間進行法である中点蛙跳び法(leap-frog法)を線形テスト問題に適用してみる.

これに un=ξnu0 および z=λΔt を代入して整理すると,中点蛙跳び法の

複素増幅率ξは

の解として次式で得られる.ここでは複素増幅率ξの解を求めるのではなく,絶対安定領域の境界|ξ|=1を与えるzの範囲を調べてみる.そのため上式を変形しξ=e iθを代入すると,

( )nnn utuu λ⋅Δ+= −+ 211

0122 =−− ξξ z

( ) θξ

ξ θθ

θ

θcos

221

21

22i

ieei

eez

ii

i

i=

−=

−=

−=

を得る.これは,zが虚軸上の(-i, +i)の範囲のみで安定,つまり中点蛙跳び法はλR=0以外では数値解が無条件に不安定となることを示している.

以上のように,時間進行法は必ずしも精度が高いものが適切なわけではなく,数値安定性も含めて検討する必要がある.

Page 67: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

67

1・3・1 線形多段階法の絶対安定領域

線形多段階法の一般形(ただしα1≠0),

を線形テスト問題に適用し,un=ξnu0およびz=λΔtを代入

すると次式を得る.

この式による複素増幅率の根が全て |ξ|≦1 を満足する場合

に線形多段階法は絶対安定である.

∑ ∑−= −=

++ =1

Nj

1

Nj

jnj

jnj Fu

t1 βαΔ

∑ ∑−= −=

++ =−1 1

0Nj Nj

jnj

jnj z ξβξα

Page 68: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

68

線形多段階法の安定限界曲線(絶対安定領域の境界),つまり |ξ|=1 を与える z は,LM法の安定限界関数,

( )

に対して ξ=eiθを代入し,0から2πの範囲のθに対するzを描けば良い.

以下に,AM公式,AM公式およびBD公式に対する安定限界関数と安定限界曲線を示しておく.

jnj

Nj

Nj

jnj

z+

−=

−=

+

∑==

ξβ

ξαξϕ 1

1

LM法の安定限界関数

Page 69: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

69

AB公式

陽的オイラー法(AB1)1−= ξz

( )1312

−−

=ξξξz

( )51623

1122

2

+−

−=

ξξξξz

( )9375955

12423

3

−+−

−=

ξξξξξz

AB2

AB3

AB4

–3 –2 –1 0 1–2

–1

0

1

2

λ RΔ t

λ I Δ

t

AB3

AB4

AB2

Eulerexplicit

u s

u su s

us

u

u

図1.10 AB法の安定限界曲線

Page 70: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

70

AM公式

陰的オイラー法(AM1)

クランク・ニコルソン法(AM2)

AM3

AM4

ξξ 1−

=z

( )112

+−

=ξξz

( )185

1122 −+

−=

ξξξξz

( )15199

12423

2

+−+

−=

ξξξξξz

–6 –4 –2 0 2–4

–2

0

2

4

λ RΔ t

λ I Δ

t AM3

AM4

AM2

AM1

Eulerexplicit

us

us

u s us

us

図1.11 AM法の安定限界曲線

Page 71: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

71

BD公式

陰的オイラー法(BD1)

BD2

BD3

BD4

ξξ 1−

=z

2

2

2143

ξξξ +−

=z

3

23

6291811

ξξξξ −+−

=z

4

234

12316364825

ξξξξξ +−+−

=z

–4 0 4 8 12–8

–4

0

4

8

λ RΔ t

λ I Δ

t

BD3

BD4BD2

BD1

Eulerexplicit

u s u s

us

u s

us

図1.12 BD法の安定限界曲線

–6 –3 0 3 6–6

–3

0

3

6

λ RΔ t

λ I Δ

t

BD3

BD4u

s

us

73o

86o

図1.13 BD3とBD4の原点付近の安定限界曲線

Page 72: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

72

以上より,

線形多段解法(AB法,AM法,BD法)では,精度が上がると絶対安定領域が狭くなることがわかる.

また,これらの中でA安定な時間進行法は,陰的オイラー法(AM1),クランク・ニコルソン法(AM2),および2次精度後退差分法(BD2)のみである.

なお,BD3はA(86°)安定,BD4はA(73°)安定である.

Page 73: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

73

1・3・2 RK法の絶対安定領域

線形テスト問題にs段RK法を適用し行列表示すると次式を得る.ただし z=λΔt である.

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

=

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢

−−−−−

−−−−

−−−−−−−

+

−−−−−

n

n

n

n

n

n

s

s

s

sssss

ssssss

s

s

uuu

uu

uu

u

uu

zbzbzazaza

zazazaza

zazazazazazaza

MM

LLL

LL

L

MMOOOM

L

LL

1

)(

)1(

)2(

)1(

1

11

1111311

2232221

11211

10)1(0)1(

0)1(0)1(

Page 74: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

74

この連立方程式をCramerの公式で解きun+1(解のs+1成分)

を求めると次式を得る.

( )( )zAI

zzAIzRuzRuT

nn−+−

==+

detdet)(,)(1 eb

ここで,s×s行列AとIの成分を(A)ij=aij および(I)ij=δij,またs元ベクトルbとeの成分をbT=(b1,…,bs)およびeT=(1,…,1)としている.

R(z)はRK法の安定性因子と呼ばれ,RK法の絶対安定領域は|R(z)|≦1 で与えられる.

Page 75: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

75

補足:RK法の安定性因子の導出(1/2)

まずRK法に対するブッチャー配列を

TAb

c

と表現し,s×s行列 A と I の成分を(A)ij=aij および(I)ij=δij,またs元ベク

トルの成分を

bT=(b1, … ,bs), cT=(c1, … ,cs),eT=(1, … ,1), 0T=(0, … ,0), uT=(u(1), … ,u(s))

とすると,線形テスト問題に適用されたs段RK法は次のように記述される.

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡−

−+ 11

)(1

eub

0 nnT u

uzzAI

Page 76: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

76

補足:RK法の安定性因子の導出(2/2)

上記連立方程式をCramerの公式で解いたun+1の解(解のs+1成分)はま

ず次式となる .

n

T

Tn u

zzAI

zzAI

u

⎥⎦

⎤⎢⎣

⎡−

⎥⎦

⎤⎢⎣

⎡−

=+

1)(

det

1)(

det1

b0

be

ここで,ブロック行列の行列式に関する数学公式

( ) ( )BCDADDBCA 1detdetdet −−⋅=⎥

⎤⎢⎣

を適用すると,分母および分子に現れている行列式はそれぞれ

( ) ,det1

)(det zAI

zzAIT −=⎥

⎤⎢⎣

⎡−

−b

0 ( )TT zzAI

zzAI

ebb

e+−=⎥

⎤⎢⎣

⎡−

−det

1)(

det

となるので,

( )( ) ,)(

detdet1 nn

Tn uzRu

zAIzzAIu =

−+−

=+ eb ( )( )zAI

zzAIzRT

−+−

=det

det)( eb

を得る.

Page 77: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

77

陽的RK法に対しては j>I で aij=0 なので det(I-zA)=1 であり,安定性因子R(z)は

( )TzzAIzR eb+−= det)( 陽的RK法の安定性因子

与えられる.これは一般にzのs次多項式s

s zqzqzqzR ++++= L2211)(

となり,陽的RK法ではA安定なものが存在しないこと( |z| -∞で|R(z)| ∞となるため)を示している.また,線形テスト問題に対するun+1の解析解のテイラー展開,

nm

ntn umzzzueu ⎟

⎟⎠

⎞⎜⎜⎝

⎛+++++==+ LL

!!21

21 λ

と比べると,s段p次精度陽的RK法の安定性因子は

ss

pp

pzqzq

pzzzzR +++++++= +

+ LL 11

2

!!21)(

となることが解る.

Page 78: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

78

特にs≦4に対してはs段s次精度陽的RK法が構成できるが,この場合の安定性因子はそれぞれ以下となる

zzR += 1)(

!21)(

2zzzR ++=

!3!21)(

32 zzzzR +++=

!4!3!21)(

432 zzzzzR ++++=

陽的オイラー法(RK1)

RK2

RK3

RK4

陽的RK法に対する安定限界曲線を図1.14に示す.線形多段階法と異なり,陽的RK法は精度が上がると絶対安定領域が広がる.

–4 –2 0 2

–2

0

2

λ RΔ t

λ I Δ

t RK3

RK4

RK2

Eulerexplicit

u s

u s

us

us

図1.14 陽的RK法の安定限界曲線

Page 79: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

79

陰的および半陰的RK法の安定性因子はzの有理関数となるのでA安定となる可能性がある.1・2・2節で紹介した陰的および半陰的RK法は全てA安定であり,それぞれに対する安定性因子は以下となる.

zzR

−=

11)(

21

21

)(z

z

zR−

+=

2

2

6331

631

331

)(

⎟⎟⎠

⎞⎜⎜⎝

⎛ +−

+−−

=

z

zzzR

1221

1221

)( 2

2

zz

zz

zR+−

++=

1201021

1201021

)( 32

32

zzz

zzz

zR−+−

+++=

陰的オイラー法(1段1次IRK1)

陰的中点法(1段2次IRK法)およびCN法(2段2次SIRK法)

2段3次SIRK法(ノルセット法)

2段4次IRK法

3段6次IRK法

Page 80: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

80

輸送法方程式の時間進行を考える場合,移流項の数値安定性は固有値の虚部に,また拡散項の数値安定性は固有値の実部に支配されるので,時間進行法の安定性のまとめとして,実数および純虚数の固有値に対する安定領域を表1.1に示しておく.

Page 81: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

81stable-AStableStableIRK6stage-3stable-AStableStableIRK4stage-2stable-AStableStableIRK2stage-1

83.2002.79RK4

73.1002.51RK30)Unstable(02RK2

stable-)A(7371.4StableBD4

stable-)A(8694.1StableBD3stable-AStableStableBD2

0)Unstable(03AM40)Unstable(06AM3

stable-AStableStableNicolson)-AM2(Crankstable-AStableStableimplicit)AM1(Euler

430.0003.0AB4

723.000545.0AB30)Unstable(01AB20)Unstable(02explicit)AB1(Euler

RemarksImaginary)0(Real

I

o

o

I

I

I

I

≤Δ≤≤Δ≤

≤Δ≤≤Δ≤≠≤Δ≤

≥Δ

≥Δ

≠≤Δ≤≠≤Δ≤

≤Δ≤≤Δ≤

≤Δ≤≤Δ≤≠≤Δ≤≠≤Δ≤

≤Δ

tt

ttt

t

t

tt

tt

ttttt

IR

IR

R

I

I

R

R

IR

IR

R

R

R

λλ

λλλλ

λ

λ

λλλλ

λλ

λλλλλλ

λ

表1.1 実数および純虚数の固有値に対する安定領域(AB,AM,BD,RK,IRK)

Page 82: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

82

なお,時間進行法の安定性に関して次の定理が知られている.

ダルキスト(Dahlquist)の定理:1) 陽的ルンゲ・クッタ法はA安定にはならない.2) 陽的な線形多段解法はA安定にはならない.3) A安定な線形多段階法の精度は2を超えない.4) 2次精度でA安定な線形多段解法のうち,局所誤差の絶対

値が最も小さいものはクランク・ニコルソン法(AM2)である.

Page 83: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

83

第1章の参考文献(1) 三井斌友,数値解析入門 –常微分方程式を中心に-,朝倉書店(1985).(2) 三井斌友,常微分方程式の数値解法,岩波書店(2003).(3) U.M.アッシャー,L.R.ペツォオルド 共著,中森眞理尾雄 監修,嘉

村友作,三ツ間均 共訳,常微分方程式と微分代数方程式の数値解法,培風館(2006).

(4) Gear, C.W., Numerical Initial Value Problems in Ordinary Differential Equations, Prentice-Hall (1971).

(5) Fatunla, S.O., Numerical Methods for Initial Value Problems in OrdinaryDifferential Equations, Academic Press (1988).

(6) Butcher, J.C., Numerical Methods for Ordinary Differential Equations, John Wiley and Sons (2003).

(7) Williamson, J.H., Low-Storage Runge-Kutta Schemes, J. Comput. Phys., Vol.35 (1980), pp.48-56.

Page 84: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

84

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 85: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

85

目的:非圧縮性流れの計算アルゴリズム(圧力ベース解法)を理解する.

非圧縮性流れの運動はナビエ・ストークス(NS)方程式および連続の式を用いて記述される.

(2.1) NS方程式

(2.2) 連続の式

上式中で t は時間,v は速度ベクトル,p は圧力/密度(本章では以降圧力と呼ぶ),νは動粘度,∇ は勾配演算子,s は外力等によるソース項のベクトルである.動粘度は定

数とする.また,式(2.1)の左辺第2項は移流項,右辺第1項は圧力勾配項,右辺第2項は粘性項と呼ばれる.

第2章 非圧縮性流れの計算アルゴリズム

( ) svvvv+∇+−∇=∇+

∂∂ 2νp

t・

0=⋅∇ v

Page 86: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

86

本章では,式(2.1)および式(2.2)を解いて速度vおよび圧力pの解を求める非圧縮性流れの一般的な解法を示す.

空間および時間離散化手法を定めれば式(2.1)および式(2.2)は離散化できるが,非圧縮性流れでは連続の式(2.2)がNS方程式(2.1)に対する拘束条件となるので,これらの式が同時に満足されるように速度vおよび圧力pの数値解を求める解

法が必要となる.

原始関数法

Page 87: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

87

速度vについては式(2.1)を基に時間発展を行えば良いが,非圧縮性流れでは圧力pに関する時間発展方程式が存在しない.

このため,通常は式(2.1)に発散(∇・)を作用させて得られる圧力のポアソン方程式,

( ) ( )[ ]svvvv+⋅∇−∇⋅∇+

∂⋅∇∂

−=∇⋅∇ 2νt

p (2.3) 圧力のポアソン方程式

あるいはこれに関連した方程式と連続の式(2.2)とを基に圧力を求めながら式(2.1)の時間発展を行い速度vが求められる.

非圧縮性流れの計算アルゴリズム(圧力ベース解法)

Page 88: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

88

NS方程式(2.1)の時間進行法に応じてそれぞれ経済的な解法がこれまでに開発されている.

表2.1 非圧縮性流れの計算アルゴリズム

NS式の各項の時間進行法計算アルゴリズム

移流項 粘性項 圧力項

MAC法 系統 陽解法 陽解法

フラクショナル・ステップ法 系統 陽解法 陰解法

――― 陰解法 陽解法

SIMPLE法 系統 陰解法 陰解法

(陰解法)

それぞれの計算アルゴリズムについて2・1節,2・2節,2・3節で説明する.

Page 89: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

89

解法の説明に具体的な空間離散式が必要となる場合には2次元の流れ場を考える.その場合のNS方程式(2.1)および連続の式(2.2)は次式で与えられる.

上式中でu,vは速度ベクトルvのx,y方向成分,sx,xyはソース項ベクトルsのx,y方向成分である.

xsyu

xu

xp

yvu

xuu

tu

+⎟⎟⎠

⎞⎜⎜⎝

∂∂

+∂∂

+∂∂

−=∂

∂+

∂∂

+∂∂

2

2

2

ysy

vx

vyp

yvv

xuv

tv

+⎟⎟⎠

⎞⎜⎜⎝

∂∂

+∂∂

+∂∂

−=∂∂

+∂

∂+

∂∂

2

2

2

0=∂∂

+∂∂

yv

xu

(2.4a)

(2.4b)

(2.5)

2次元流れの基礎式

Page 90: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

90

離散値の表現方法として,(xi,yj)点上に配置された変数の離散値を例えば pi,jと表記する.さらに,時間離散点tn=nΔtにおけるpi,j をpn

i,jと表記する.Δt は時間刻み幅である.

2・1節で示されるとおり非圧縮性流体の差分解析ではスタガード格子の使用が推奨されるので,本章での各解法の説明は基本的にスタガード格子を用いて行われる.

レギュラー格子スタガード格子コロケート格子

Page 91: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

91

なお,有限体積法に基づいて空間離散化が行なわれる場合には,通常式(2.1)の代りに次式,

( ) ( ) ( )[ ]{ } svvvvv+∇+∇⋅∇+−∇=∇+

∂∂ Tp

tν・ (2.6)

が基礎式として用いられる.(∇v)T は速度勾配テンソル(∇v)の転置テン

ソルである.粘性係数νが定数の場合には連続の式(2.2)から式(2.1)と式(2.6)とは等しくなる.渦動粘度νtを用いる乱流モデルの運動方程式は式(2.6)のνを(ν+νt)で置き換えたものになり,またνが空間的な変数であ

る場合も扱えるので,非圧縮性流れに対する運動方程式としては式(2.1)よりも式(2.6)の方が一般的である.

しかし式(2.6)を用いると解法の統一的な説明が煩雑になるので,2・1節,2・2節,2・3節の解法の説明では式(2.1)を運動方程式として用いる.乱流モデルを用いる場合および有限体積法により空間的離散化が行われる場合に対しては,粘性項の空間離散式が式(2.6)中の形を基に構成されているものと解釈して頂きたい.

Page 92: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

92

また,輸送量φ の輸送方程式の一般形は次式となる.

(2.7)

ここでΓφはφの拡散係数,sφ はソース項である.式(2.7)の形の輸

送方程式を流れ場と同時に解く場合,通常時間進行の各ステップにおいて速度vおよび圧力pが求められた後に式(2.7)を単純に時間進行して

φが求められるので,式(2.7)の時間進行法については特に説明しない.

( ) ( ) φφ φφφ sΓt

+∇⋅∇=⋅∇+∂∂ v

Page 93: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

93

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 94: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

94

2・1 差分格子系とMAC法系統の解法

NS方程式(2.1)の移流項と粘性項を陽的に時間離散化し,連続の式(2.2)を新たな時刻tn+1において満足させると次式

を得る.

(2.8)

(2.9)

( ) svvvvv+∇+−∇=∇+

Δ− +

+nnnn

nnp

t21

1ν・

01 =⋅∇ +nv

式(2.8)では時間に関して1次精度の陽解法が用いられているが,MAC法系統の解法で時間精度の向上を図りたい場合には移流項および粘性項に対してより高次精度の陽的時間進行法(例えば2次精度アダムス・バシュフォース法)が用いられる.

Page 95: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

95

式(2.8)に発散(∇・)を作用させて式(2.9)を用いると圧力 pn+1のポアソン方程式が得られる.

( )[ ]svvvv +⋅∇−∇⋅∇+⋅∇Δ

=∇⋅∇ + nnnnn

tp 21 1 ν (2.10)

MAC法系統の解法では,基本的には圧力のポアソン方程式(2.10)を解いて式(2.9)を満足する速度場vn+1を式(2.8)

から求める.

・式(2.10)を解いてpn+1を得る・式(2.8)からvn+1を得る

※この流れ場は式(2.9)を満足する

_____

Page 96: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

96

2・1・1 レギュラー格子を用いる差分法の問題点

速度成分u,vおよび圧力pを同じ空間離散点上に配置する差分

法は基礎方程式の離散化が最も容易である.この空間配置による差分格子をレギュラー格子と呼ぶ(図2.1).

x

y xi xi+2xi+1xi–1xi–2

yj

yj+2

yj+1

yj–1

yj–2

: u, v, p

図2.1 レギュラー格子

Page 97: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

97

式(2.8)および式(2.9)を2次元で記述し,空間微分をレギュラー格子上の差分で近似して整理すると次式を得る.

jin

ii

jin

jin

jin

jin ft

xxpptuu ,

11

,11

,11

,,1 ⋅Δ+

−−

Δ−=−+

−+

++

+

jin

jj

jin

jin

jin

jin gt

yypptvv ,

11

1,1

1,1

,,1 ⋅Δ+

−−

Δ−=−+

−+

++

+

011

1,1

1,1

11

,11

,11

=−−

+−−

−+

−+

++

−+

−+

++

jj

jin

jin

ii

jin

jin

yyvv

xxuu

(2.11a)

(2.11b)

(2.12)

ここで,fおよびgは

xsyu

xu

yvu

xuuf +⎟⎟

⎞⎜⎜⎝

∂∂

+∂∂

+∂

∂−

∂∂

−= 2

2

2

ysy

vx

vyvv

xuvg +⎟⎟

⎞⎜⎜⎝

∂∂

+∂∂

+∂∂

−∂

∂−= 2

2

2

であり,fi,jとgi,jはそれぞれ(xi,yj)点上での fとgの離散近似式である.

x

y xi xi+2xi+1xi–1xi–2

yj

yj+2

yj+1

yj–1

yj–2

: u, v, p

Page 98: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

98

圧力pn+1は,式(2.11)によりun+1およびvn+1が時間進行された

後に式(2.12)を満足するものでなくてはならない.そのような圧力 は次式を満足する.

( )11

1,1,

11

,1,1,

2

2,1

,1

2

,1

2,1

11

2

,21

,1

2

,1

,21

11

1

1

−+

−+

−+

−+

−++

+

++

+

−+

−++

+

++

+

−+

−−

+−−

=

⎥⎥⎦

⎢⎢⎣

−−

−−−

−+

⎥⎦

⎤⎢⎣

−−

−−−

jj

jin

jin

ii

jin

jin

jin

R

jj

jin

jin

jj

jin

jin

jj

ii

jin

jin

ii

jin

jin

ii

yygg

xxff

tD

yypp

yypp

yy

xxpp

xxpp

xx

(2.13) x

y xi xi+2xi+1xi–1xi–2

yj

yj+2

yj+1

yj–1

yj–2

: u: v: p

図2.2 レギュラー格子の問題点

ここで,

( ) .11

1,1,

11

,1,1,

−+

−+

−+

−+

−−

+−−

=jj

jin

jin

ii

jin

jin

jin

R yyvv

xxuuD

式(2.13)は式(2.11)を式(2.12)に代入して得られる.しかしながら式(2.13)の左辺は隣り合う格子点の値を参照しない離散式であるため(図2.2),この式から得られる圧力の数値解は空間的に1つ飛びの振動を起こす可能性があり滑らかな物理的な圧力解が得られない場合がある.

Page 99: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

99

式(2.13)は式(2.10)を空間的に離散化したものと見なせるので,式(2.13)の左辺を2階微分に対する次の差分式で置き換えて圧力を求めることも考えられる.

(2.14)

上式による圧力pn+1の解は滑らかで物理的なものとなるが,逆にこの圧力を用いて計算される速度un+1およびvn+1は連続の

式の離散式(2.12)を満足しなくなる.

つまり,レギュラ格子を用いた差分法による非圧縮性流体の解法では,圧力の解の物理性あるいは連続の式の満足度のいずれかが犠牲になる.

( )11

1,1,

11

,1,1,

1

1,1

,1

1

,1

1,1

11

1

,11

,1

1

,1

,11

11

2

2

−+

−+

−+

−+

−++

+

++

+

−+

−++

+

++

+

−+

−−

+−−

=

⎥⎥⎦

⎢⎢⎣

−−

−−−

−+

⎥⎦

⎤⎢⎣

−−

−−−

jj

jin

jin

ii

jin

jin

jin

R

jj

jin

jin

jj

jin

jin

jj

ii

jin

jin

ii

jin

jin

ii

yygg

xxff

tD

yypp

yypp

yy

xxpp

xxpp

xx

Page 100: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

100

2・1・2 MAC法とスタガード格子

レギュラー格子の問題点を解消する差分格子として,非圧縮性流体の数値解析ではスタガード格子が用いられる(図2.3).

図2.3 スタガード格子

x

yxi

xi+1/2

xi+1xi–1

xi–1/2

yj

yj+1/2

yj+1

yj–1

yj–1/2

: u: v: p

yj–3/2

yj+3/2

xi+3/2xi–3/2

Δxi

Δxi+1/2

Δyj

Δyj+1/2

スタガード格子では,圧力の配置点に対しそれぞれの方向に半格子ずれた位置に速度成分が配置される.

つまり,圧力pの配置点を(xi,yj)とすると,x方向速度成分uは点(xi+1/2,yj),y方向速度成分vは点(xi,yj+1/2)上に

配置される.

Page 101: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

101

NS方程式(2.8)の各方向成分はそれぞれの速度成分の配置点上で,また連続の式(2.9)は圧力の配置点で空間的に離散化される.

jin

i

jin

jin

jin

jin ft

xpptuu ,2/12/1

,1

,11

,2/1,2/11

++

++

+

+++ ⋅Δ+

Δ−

Δ−=

2/1,2/1

,1

1,1

2/1,2/1,1

++

++

+

+++ ⋅Δ+

Δ−

Δ−= jin

j

jin

jin

jin

jin gt

ypptvv

02/1,1

2/1,1

,2/11

,2/11

−+

Δ− −

++

+−

++

+

j

jin

jin

i

jin

jin

yvv

xuu

(2.15a)

(2.15b)

(2.16)

x

yxi

xi+1/2

xi+1xi–1

xi–1/2

yj

yj+1/2

yj+1

yj–1

yj–1/2

: u: v: p

yj–3/2

yj+3/2

xi+3/2xi–3/2

Δxi

Δxi+1/2

Δyj

Δyj+1/2

Page 102: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

102

式(2.15)を式(2.16)に代入すると次式が得られる.

( )j

jin

jin

i

jin

jin

jin

S

j

jin

jin

j

jin

jin

j

i

jin

jin

i

jin

jin

i

ygg

xffD

t

ypp

ypp

y

xpp

xpp

x

Δ−

+Δ−

=

⎥⎥⎦

⎢⎢⎣

Δ−

−Δ

−Δ

+

⎥⎦

⎤⎢⎣

Δ−

−Δ

−Δ

−+−+

−++

+

++

+

−++

+

++

+

2/1,2/1,,2/1,2/1,

2/1

1,1

,1

2/1

,1

1,1

2/1

,11

,1

2/1

,1

,11

1

1

1

ここで,

( )j

jin

jin

i

jin

jin

jin

S yvv

xuuD

Δ−

+Δ−

= −+−+ 2/1,2/1,,2/1,2/1,

(2.17)

式(2.17)の左辺は式(2.14)の左辺と等価であり,これを解いて求められる圧力の数値解pn+1は滑らかで物理的であり,

さらにこの圧力を用いて式(2.15)により時間発展される速度un+1およびvn+1は式(2.16)を離散的に満足する.

Page 103: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

103

スタガード格子の使用が提案されたこの解法はMAC法(Marker And Cell法)と呼ばれる(1).

原論文においてはマーカーを飛ばして自由表面の位置を決定しながら流れ場を解く解法としてMAC法が提案されているが,現在では流れ場の解法の部分のみに対してMAC法の名称が用いられている.

MAC法の計算手順1) 初期条件としてunとvnを与え,2) 式(2.17)を解いてpn+1を求めた後,3) 式(2.15)からun+1とvn+1を求め,4) un+1とvn+1をunとvnとして 1)に戻る.

以上の手順を,非定常計算の場合には必要な時間まで,定常計算の場合には収束条件が満足されるまで繰り返す.

Page 104: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

104

2・1・3 SMAC法

MAC法では圧力のポアソン方程式(2..17)の右辺の境界値および圧力の境界条件を適切に与えることが一般に煩雑である.これを解消する解法にSMAC法(Simplified MAC法)がある(2).SMAC法による解法を説明するため,まず式(2.15)を次のように分解する.

jin

i

jin

jin

jin

ji ftx

pptuu ,2/12/1

,,1,2/1,2/1ˆ +

+

+++ ⋅Δ+

Δ−

Δ−=

2/1,2/1

,1,2/1,2/1,ˆ +

+

+++ ⋅Δ+

Δ−

Δ−= jin

j

jin

jin

jin

ji gty

pptvv

2/1

,,1,2/1,2/1

1 ˆ+

+++

+

Δ

−Δ−=

i

jijijiji

n

xpp

tuuδδ

2/1

,1,2/1,2/1,

1 ˆ+

+++

+

Δ

−Δ−=

j

jijijiji

n

ypp

tvvδδ

(2.18a)

jijin

jin ppp ,,,

1 δ+=+

(2.18b)

(2.19a)

(2.19b)

また,

中間速度

δp は圧力補正量(2.20)

Page 105: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

105

式(2.19)を式(2.16)に代入するとδpのポアソン方程式が得

られる.

( ) jiS

j

jiji

j

jiji

ji

jiji

i

jiji

i

Dt

ypp

ypp

yxpp

xpp

x

,

2/1

1,,

2/1

,1,

2/1

,1,

2/1

,,1

ˆ1

11

Δ=

⎥⎥⎦

⎢⎢⎣

Δ

−−

Δ

Δ+⎥

⎤⎢⎣

⎡Δ

−−

Δ

Δ −

+

+

+

+ δδδδδδδδ

ここで,

( )j

jiji

i

jijijiS y

vvx

uuD

Δ

−+

Δ

−= −+−+ 2/1,2/1,,2/1,2/1

,

ˆˆˆˆˆ

(2.21)

Page 106: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

106

SMAC法の計算手順1)初期条件としてun,vn,pnを与え,2)式(2.18)からuとvを計算し,3)式(2.21)を解いてδpを求めた後,4)式(2.19)からun+1とvn+1および式(2.20)からpn+1を求め,5)un+1,vn+1,pn+1をun,vn,pnとして 1)に戻る.

^ ^

以上の手順を,非定常計算の場合には必要な時間まで,定常計算の場合には収束条件が満足されるまで繰り返す.

SMAC法(およびMAC法)ではポアソン方程式を解くために計算時間の大部分が費やされるので,楕円型方程式の離散式が経済的に解ける行列解法を使用する必要がある.

Page 107: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

107

MAC法と比べた場合のSMAC法の利点は境界条件の設定がわかり易い点にある.一例として,境界(xN+1/2,yj)での速度の値uBC

N+1/2,jが与えられている場合を考える(図2.4).

この場合,まず中間速度 u に対する境界値として,^

jNBC

jN uu ,2/1,2/1ˆ ++ = (2.22)

を与える.

境界条件はun+1N+1/2,j=uBC

N+1/2,jであ

ることを要求するので,式(2.19a)から

jNjN pp ,,1 δδ =+ (2.23)

が与えられる.

x

yxN

xN–1/2 xN+1/2

ΔxN+1/2

yjδ pN, j δ pN+1, j

uN+1/2, jBC

図2.4 SMAC法での境界条件

Page 108: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

108

補足:行列分解によるSMAC法の計算アルゴリズムの導出(1/2)

速度(u,v),圧力pおよび(f,g)の離散値ベクトルをそれぞれu,pおよびfと表記すると,式(2.15)および式(2.16)は次式のように表現される.

ただし,圧力はpn+1=pn+δpとしている.またGは離散的勾配演算子,Dは離散的発散演算子であり,これら離散的空間演算子では境界条件

も考慮されている.境界条件から生じる項はNS方程式および連続の式それぞれに対してbuおよびbpに含まれているものとする.

これらをまとめて行列表示すれば次式となる.

ubfpδpuu++−=+

Δ−+

nnnn

GGt

1

pbu =+1nD

( )⎥⎥⎦

⎢⎢⎣

⎡ ++−⋅Δ+=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ +

p

u

bbfpu

δpu nnnn Gt

DtGI 1

0

Page 109: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

109

補足:行列分解によるSMAC法の計算アルゴリズムの導出(2/2)

ここで,行列表示された基礎式の左辺の行列は次のようにLU分解できる.

( )⎥⎥⎦

⎢⎢⎣

⎡ ++−⋅Δ+=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ⎥⎦

⎤⎢⎣

⎡Δ−

+

p

u

bbfpu

δpu nnnn Gt

ItGI

tDGDI 1

00

これはさらに次の2式へと分解できる.

( )⎥⎥⎦

⎢⎢⎣

⎡ ++−⋅Δ+=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡Δ− p

u

bbfpu

pδu nnn Gt

tDGDI

ˆˆ0

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ +

pδu

δpu

ˆˆ

0

1n

ItGI

これらの行列を展開して整理するとSMAC法の計算アルゴリズムを得る.

( )ubfpuu ++−⋅Δ+= nnn Gtˆ

( )pbuδp −Δ

= ˆ1 Dt

DG

δpuu tGn Δ−=+ ˆ1

DG : 離散ラプラス演算子

※SMAC法では分離誤差は生じない

Page 110: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

110

2・1・4 HSMAC法(またはSOLA法)

MAC法およびSMAC法の計算時間の大部分はポアソン方程式の離散式を解くために費やされる.HSMAC法(Highly Simplified MAC法)(またはSOLA法)(3)は,δpのポアソン方程式(2.21)を解かずに速度と圧力の同時補正計算により連続の式を満足させるSMAC法の近似解法である.

まず,式(2.21)の左辺の対角項( δpi,jに関する項)のみを残してδpi,jの式を作り(優対角近似),緩和係数βを乗じ

ると次式を得る.

( )

⎥⎥⎦

⎢⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

Δ+

ΔΔ+⎟⎟

⎞⎜⎜⎝

⎛Δ

+ΔΔ

Δ

−=

−+−+ 2/12/12/12/1

,,

111111

ˆ

jjjiii

jiSji

yyyxxxt

Dp

βδ (2.24)

Page 111: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

111

式(2.19)および式(2.20)から理解されるとおり,点(i,j)上の圧力補正量δpi,jのみが与えられた場合,点(i,j)まわりの速度un+1

i+1/2,j,un+1i-1/2,j,vn+1

i,j+1/2,vn+1i,j-1/2および圧力

pn+1i,jのみがその影響を受ける.これより,点(i,j)まわりの速

度および圧力をそれぞれ次式により補正する.

(2.25a)jii

jiji px

tuu ,2/1

,2/1,2/1 ˆˆ δ+

++ ΔΔ

+←

jii

jiji px

tuu ,2/1

,2/1,2/1 ˆˆ δ−

−− ΔΔ

−←

jij

jiji py

tvv ,2/1

2/1,2/1, ˆˆ δ+

++ ΔΔ

+←

jij

jiji py

tvv ,2/1

2/1,2/1, ˆˆ δ−

−− ΔΔ

−←

jijin

jin ppp ,,, δ+←

および,

(2.25b)

(2.25c)

(2.25d)

(2.26)

x

yxi

xi+1/2

xi+1xi–1

xi–1/2

yj

yj+1/2

yj+1

yj–1

yj–1/2

: u: v: p

yj–3/2

yj+3/2

xi+3/2xi–3/2

Δxi

Δxi+1/2

Δyj

Δyj+1/2

Page 112: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

112

HSMAC法の計算手順1)初期条件としてun,vn,pnを与え,2)式(2.18)からuとvを計算し,

3)式(2.24),式(2.25),式(2.26)による点(i,j)まわりの速度および圧力の補正計算を全格子点に対して実行し,さらにそれをMAX|(DS)i,j|<εが満足されるまで繰り返す(εは連続の式に対する許容誤差). MAX|(DS)i,j|<εが満足された時点での速度と圧力をun+1,vn+1,pn+1とする.

4)un+1,vn+1,pn+1をun,vn,pnとして 1)に戻る.

^ ^

^^

以上の手順を,非定常計算の場合には必要な時間まで,定常計算の場合には収束条件が満足されるまで繰り返す.

なお式(2.24)から,連続の式(DS)i,j=0が満足されれば速度と

圧力は補正されないことがわかる.

^

Page 113: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

113

MAC法およびSMAC法と比べた場合のHSMAC法の利点は圧力のポアソン方程式を解く必要が無いという点にある.

しかし,HSMAC法はSMAC法の近似解法であり解の収束が式(2.24)中の緩和係数βの値に大きく依存することが欠点となる.

なお,βには0<β≦2 の範囲の値が用いられ,経験的にβ=1.7 程度の値が推奨されている(3).

Page 114: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

114

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 115: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

115

2・2 フラクショナル・ステップ法

先のMAC法系統の解法ではNS方程式の粘性項および移流項が陽的に時間進行されているので数値安定性条件から時間刻み幅に対する制限が生じる.

特に壁面近傍に差分格子を集中させて速度の滑り無し条件を課す場合,MAC法系統の解法では粘性項に対する数値安定性条件が厳しくなり非常に小さな時間刻み幅を使用する必要が生じる.

数値安定性条件の問題を解決するには陰的な時間進行法を導入すれば良いので,ここではNS方程式の粘性項に対してクランク・ニコルソン法を適用する解法を考える.

Page 116: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

116

この場合,式(2.1)と式(2.2)を時間離散化した方程式は次式となる.

(2.27)

01 =⋅∇ +nv (2.28)

( ) ( ) svvpvvvvvv+∇+∇+−∇=∇−∇+

Δ− ++−−

+nnnnnnn

nn

t212111

1

2221

23 νν

・・

NS方程式の移流項には2次精度のアダムス・バシュフォース法が適用されている.

ところで,式(2.27)および式(2.28)を直接解いて速度vn+1および圧力pn+1の連立解を得るには大規模な行列計算が必要となる

ので経済的ではない.これはNS方程式の粘性項あるいは移流項を陰解に時間進行する解法に共通の問題点である.

フラクショナル・ステップ法は,粘性項と圧力項の分離に基づき非圧縮性流れの陰的な非定常数値計算を経済的に実施可能とする解法である.

Page 117: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

117

2・2・1 フラクショナル・ステップ法と分離誤差

(2.29)

(2.30)

( ) ( ) svvvvvvvv+∇+∇=∇−∇+

Δ− −− nnnnn

n

t2211

221

23ˆ νν

・・

ϕ−∇=Δ

−+

t

n vv ˆ1

式(2.27)と式(2.29)との差をとり式(2.30)と比べるとポテンシャル関数 と圧力pn+1との関係が

ϕνϕ 21

2∇Δ−=+ tnp (2.31)

で与えられることがわかる.式(2.30)と式(2.28)からポテンシャル関数 のポアソン方程式が得られる.

v̂1⋅∇

Δ=∇⋅∇

tϕ (2.32)

ϕ

ϕ

まず,フラクショナル・ステップ法の一例として Kim & Moin(KM)(1) によるフラクショナル・ステップ法を示す.この解法では,式(2.27)は次の様に分離される.

Page 118: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

118

KMのフラクショナル・ステップ法の計算手順1)初期条件としてvnを与え,2)式(2.29)からvを計算し,

3)式(2.32)を解いて を求めた後,4)式(2.30)からvn+1を求め,圧力が必要ならば式(2.31)

からpn+1求め,5)vn+1をvnとして 1)に戻る.

以上の手順を必要な時間まで繰り返す.

ところで,KMのフラクショナル・ステップ法では式(2.27)を式(2.29)および式(2.30)へと分離して解法が構成されているが,このような分離の際には分離誤差が生じてしまう.加えて,上記のように空間的に離散化されていない方程式を基にフラクショナル・ステップ法を構成すると中間速度vの境界条件の設定が曖昧となってしまう.

^

Page 119: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

119

分離誤差および中間速度の境界条件設定の問題を解決するため,時間および空間に関して完全に離散化された方程式を基に解法を議論する.ここでは式(2.27)と式(2.28)の空間微分演算子についても離散化した方程式を考える.

ubsuupccuu++++−=−+

Δ− ++−

+nnnnn

nnLLG

t 2221

23 111

1 νν

pbu =+1nD

(2.33)

(2.34)

ただし,速度(u,v)および圧力pの離散値ベクトルをそれぞれuおよびp,移流項の離散ベクトルをcと表記している.また,Lは離散的ラプラス演算子,Gは離散的勾配演算子,Dは離

散的発散演算子である.これらの離散演算子は境界条件も考慮されたものであり,境界条件から生じる陽的な項はNS方程式および連続の式それぞれに対してbuおよびbpで表

現されている.

Page 120: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

120

式(2.33)と式(2.34)を行列を用いて表示すれば次式となる.

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ+

+

KM

KMn

n

DtGA

p

u

rr

pu

1

1

0 (2.35)

ここでAはA=(I-0.5ΔtνL), Iは単位行列であり,また式(2.35)

の右辺のベクトルは,

⎥⎥⎥

⎢⎢⎢

⎡⎟⎠⎞

⎜⎝⎛ +++−⋅Δ+⎟

⎠⎞

⎜⎝⎛ Δ+

=⎥⎦

⎤⎢⎣

⎡ −

p

u

p

u

b

bsccurr 1

21

23

2nnn

KM

KM tLtI ν

で定義される.式(2.35)の右辺は陽的に扱う項および境界条件により生じる項,左辺が陰的に扱う項である.

Page 121: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

121

フラクショナル・ステップ法の導入に伴う分離誤差の評価を行うため,式(2.35)に対して次の近似式を導入する(2).

(2.36)

上式中の行列BはA-1に対する近似行列である.式(2.36)の左

辺の行列は次式のようにLU分解できる.

( )⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ+

+

KM

KMn

n

DGABtA

p

u

rr

pu

1

1

0

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ⎥⎦

⎤⎢⎣

⎡Δ− +

+

KM

KMn

n

ItBGI

tDBGDA

p

u

rr

pu

1

1

00

(2.37)

上式はさらに次の2式へと分離できる.

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡Δ− KM

KM

tDBGDA

p

u

rr

puˆˆ0

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ Δ+

+

pu

pu

ˆˆ

0 1

1

n

n

ItBGI

(2.38)

(2.39)

Page 122: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

122

式(2.38)および式(2.39)の行列を展開して整理すると次式を得る.

KMA uru =ˆ

( )pbup −Δ

=+ ˆ11 Dt

DBG n

11 ˆ ++ −= nn BGpuu

(2.40)

(2.41)

(2.42)

式(2.40)~式(2.42)を解くことは式(2.36)を解くことと等価である.

また,式(2.40)~式(2.42)中に現れる空間的な離散演算子は既に境界条件が考慮されたものであるので,適切に離散化されたフラクショナル・ステップ法では中間速度uに対する境

界条件は必要ないことがわかる.

次に,行列Bの選択に応じたフラクショナル・ステップ法を考える.

^

Page 123: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

123

まず B=A-1の場合は式(2.35)を直接解くことに等しく分離誤差はゼロであるが,A-1 の計算に時間がかかるのであまり用いられない(Uzawa法).

KMのフラクショナル・ステップ法を含め従来のフラクショナル・ステップ法の多くは B=I を採用することに対応し,その場合 ( AB-I )=-0.5ΔtνLとなるので時間1次精度の分離誤差を持つ.KMのフラクショナル・ステップ法は一見して時間2次精度のようにも受け取れるが,式(2.27)を分離して式(2.29)~式(2.5)を構成する際に という解析的な互換性が用いられている.しかし,離散式について対応する互換性は一般的に成立しない( ).

Perot (2)は時間2次精度および3次精度のフラクショナル・ステップ法がそれぞれ B = I + (0.5Δtν) L および B = I +(0.5Δtν) L + (0.5Δtν)2 L2 で構

成できることを示した.しかし,これらの高次精度のフラクショナル・ステップ法はあまり汎用的ではない.

( ) ( )ϕϕ ∇∇=∇∇ 22

ϕϕ LGGL ≠

Page 124: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

124

2・2・2 Dukowicz-Dvinsky(DD)のフラクショナル・ステップ法

(2.43)⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

−−

⎥⎦

⎤⎢⎣

⎡ Δ+

+

DD

DDnn

nn

DtGA

p

u

rr

ppuu

1

1

0

ここで式(2.43)の右辺のベクトルは以下で定義される.

⎥⎥⎥

⎢⎢⎢

+−

⎟⎠⎞

⎜⎝⎛ +++−+−⋅Δ

=⎥⎦

⎤⎢⎣

⎡ −

p

u

p

u

bu

bsccuprr

n

nnnn

DD

DD

D

LGt 1

21

23ν

非定常問題に対してフラクショナル・ステップ法を適用する場合には,できれば分離誤差も含めて2次精度以上の時間精度を持つ解法を使用したい.Perot の時間2次精度フラクショナル・ステップ法とは別に,Dukowicz &Dvinsky (DD)(6)

は式(2.35)をデルタ形式(解の補正量を変数とする形式)に書き直した行列方程式を基に,より汎用的な時間2次精度のフラクショナル・ステップ法が構成できることを示した.

Page 125: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

125

(2.44)

式(2.43)から式(2.44)への近似の誤差は

DDのフラクショナル・ステップ法が時間2次精度となることは式(2.43)の圧力項がデルタ形式であることによる.速度ベクトルもデルタ形式で記述されているが,これは後に式(2.54)で紹介する近似因子化を導入するためであり,DDのフラクショナル・ステップ法の本質とは関係ない.DDのフラクショナル・ステップ法では,式(2.43)の左辺の行列に対してKMのフラクショナル・ステップ法と同様な近似を導入する.

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

−−

⎥⎦

⎤⎢⎣

⎡ Δ+

+

DD

DDnn

nn

DtAGA

p

u

rr

ppuu

1

1

0

( ) ( ) ( ) ( )2111

2tOLGtGtAG nnnnnn Δ=−Δ−=−−−Δ +++ pppppp ν

(2.45)

となるのでDDのフラクショナル・ステップ法は時間2次精度の分離誤差を持つ.ここでpn+1-pn=O(Δt)と評価されている.

Page 126: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

126

(2.46)

これは次のように分離できる.

近似式(2.44)は次のようにLU分解が可能である.

(2.47)

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

−−

⎥⎦

⎤⎢⎣

⎡ Δ⎥⎦

⎤⎢⎣

⎡Δ− +

+

DD

DDnn

nn

ItGI

tDGDA

p

u

rr

ppuu

1

1

00

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡Δ− DD

DD

tDGDA

p

u

rr

δpδu0

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

−−

⎥⎦

⎤⎢⎣

⎡ Δ+

+

δpδu

ppuu

nn

nn

ItGI

1

1

0 (2.48)

Page 127: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

127

(2.49)

式(2.47)および式(2.48)を展開して整理すると次式を得る.

(2.50)

(2.51)

(2.52)

(2.53)

式(2.49)~式(2.53)を用いて速度および圧力の時間進行を行うのがDDのフラクショナル・ステップ法である.

DDLtI urδu =⎟⎠⎞

⎜⎝⎛ Δ−

δuuu += nˆ

( )pbuδp −Δ

= ˆ1 Dt

DG

δpuu tGn Δ−=+ ˆ1

δppp +=+ nn 1

Page 128: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

128

DDのフラクショナル・ステップ法の計算手順1)初期条件としてunおよびpnを与え,2)式(2.49)を解いてδuを求め,式(2.50)からuを計算し,3)式(2.51)を解いてδpを求めた後,4)式(2.52)からun+1を求め,式(2.53)から圧力pn+1を求め,5)un+1およびpn+1をそれぞれunおよびpnとして1)に戻る.

以上の手順を必要な時間まで繰り返す.

DDのフラクショナル・ステップ法の計算手順のうち,式(2.49)は速度補正量の離散式,式(2.51)は圧力補正量のポアソン方程式に対応する離散式であり,いずれも行列を解く必要がある.式(2.51)は連続の式の離散式を満足させるために解かれるものであり,そのままの形で出来るだけ精度良く解かねばならない.

^

Page 129: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

129

(2.55a)

式(2.49)に対しては近似因子化,

(2.55b)

(2.55c)

DDzyx LtILtILtI urδu =⎟⎠⎞

⎜⎝⎛ Δ−⎟

⎠⎞

⎜⎝⎛ Δ−⎟

⎠⎞

⎜⎝⎛ Δ−

222ννν

(2.54)

を導入すれば経済的に解くことができる.ここで,Lx , Ly , Lzはそれぞれ x,y,z 各方向の2階微分に対応する離散演算子であり,L と同様に境界条件

も考慮されているものとする.式(2.49)から式(2.54)への演算子の近似誤差はO(Δt2)であるので,この近似は式(2.27)が持つ時間精度(2次精度)を

低下させない.

式(2.54)の解δu は1次元の行列を3回解く事で得られる.

DDxLtI uruδ =′′⎟⎠⎞

⎜⎝⎛ Δ−

uδuδ ′′=′⎟⎠⎞

⎜⎝⎛ Δ− yLtI

uδδu ′=⎟⎠⎞

⎜⎝⎛ Δ− zLtI

Page 130: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

130

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)

Page 131: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

131

2・3 SIMPLE法系統の解法

NS方程式の時間進行に関して,MAC法系統の解法では粘性項および移流項の双方が陽的に時間進行され,フラクショナル・ステップ法では粘性項が陰的に移流項は陽的に時間進行される.SIMPLE法系統の解法は粘性項および移流項の双方を陰的に時間進行してさらに大きな時間刻み幅の設定を可能とし収束性および経済性を高める解法である.しかしながら,速度に関して非線形である移流項を完全に陰的に扱うことは各時間ステップの運動方程式の時間積分に繰り返し計算が必要となり経済的でないので,SIMPLE法系統の解法では式(2.1)と式(2.1)を時間離散化した次式,

(2.56)

(2.57)01 =⋅∇ +nv

を基に解法が構成される.

( ) svpvvvv+∇+−∇=∇+

Δ− +++

+1211

1nnnn

nn

tν・

Page 132: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

132

(2.58a)

2次元流れでは式(2.56)および式(2.57)は次式となる.

(2.58b)

(2.59)

x

nnnnnnnnns

yu

xu

xp

yuv

xuu

tuu

+⎟⎟⎠

⎞⎜⎜⎝

∂∂

+∂

∂+

∂∂

−=∂

∂+

∂∂

− ++++++

2

12

2

121111ν

y

nnnnnnnnns

yv

xv

yp

yvv

xvu

tvv

+⎟⎟⎠

⎞⎜⎜⎝

∂∂

+∂

∂+

∂∂

−=∂

∂+

∂∂

− ++++++

2

12

2

121111ν

011

=∂

∂+

∂∂ ++

yv

xu nn

Page 133: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

133

(2.60a)

さらに式(2.58)および式(2.59)の空間微分を離散化して整理すれば次式を得る.

(2.60b)

(2.61)

( )2/1

,1

,11

,2/1,2/1

1,2/1

1,2/1

+

++

+

++

++

++ Δ

−−=⎟

⎠⎞

⎜⎝⎛∑ ⋅+

i

jin

jin

jiu

jinbnb

nnb

uji

njiP

u

xppbuaua

( )2/1

,1

1,1

2/1,2/1,

12/1,

12/1,

+

++

+

++

++

++ Δ

−−=⎟

⎠⎞

⎜⎝⎛∑ ⋅+

j

jin

jin

jiv

jinbnb

nnb

vji

njiP

v

yppbvava

02/1,1

2/1,1

,2/11

,2/11

−+

Δ− −

++

+−

++

+

j

jin

jin

i

jin

jin

yvv

xuu

式(2.60)中の総和記号は周辺点nb=E,W,N,Sの総和をとることを意味し,ui+1/2,jに関する式(2.60a)の左辺は次式と展開される.

( )[ ] jiS

nS

uN

nN

uW

nW

uE

nE

uP

nP

u

jinbnb

nnb

uji

njiP

u

uauauauaua

uaua

,2/111111

,2/1

1,2/1

1,2/1

++++++

+

++

++

⋅+⋅+⋅+⋅+⋅=

⎟⎠⎞

⎜⎝⎛∑ ⋅+

auP,au

E,auW,au

N,auS は離散式の係数で,粘性項および移流

項の離散化および境界条件に応じて定められる.

Page 134: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

134

変数の添字P,E,W,N,Sは離散点の相対的な位置を表す.図2.5に,ui+1/2,jに対するNS方程式のスタガード格子上の離散点を示す.速度ui+1/2,jの離散式についてはuP=ui+1/2,j,uE=ui+3/2,j,uW=ui-1/2,j,uN=ui+1/2,j+1,uS=ui+1/2,j-1と定義さ

れる.SIMPLE法系統の解法の空間離散化は,通常図中の破線で示されるコントロール・ボリュームに関する有限体積法で行われる.式(2.60)中の右辺第2項は圧力勾配項の離散式である.式(2.60a)中のbu

i+1/2,jは離散式の残りの項をまとめたものである.速度vi,j+1/2の離散式も同様に構成され

る(図2.6).

x

y

xi

xi+1/2

xi+1

xi–1/2

yj

yj+1/2

yj+1

yj–1

yj–1/2

xi+3/2

Δxi+1/2

Δyj

uN

uP

uS

uEuWpi+1,jpi,j

x

y xi

xi+1/2

xi+1

xi–1/2

yj+1

yj+1/2

yj

yj–1/2

Δxi

Δyj+1/2

vN

pi,j+1

pi,j

xi–1

vP

vS

vEvW

yj+3/2

図2.6 vP=vi,j+1/2に対する離散点

図2.5 uP=ui+1/2,jに対する離散点

Page 135: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

135

2・3・1 SIMPLE法

(2.62b)

(2.62a)

式(2.60)は速度成分u,vに関する離散式であるが,右辺に現れるpn+1が与えられなければ速度un+1,vn+1は求められない.

SIMPLE法(7)(Semi-Implicit Method for Pressure-Linked Equations)では,まず次式を解いて速度の予測値u*,v*を求める.

( )2/1

,,1,2/1

,2/1,2/1,2/1

+

++

+++ Δ

−−=⎟

⎠⎞

⎜⎝⎛∑ ⋅+

i

jin

jin

jiu

jinbnbnb

ujijiP

u

xppbuaua **

( )2/1

,1,2/1,

2/1,2/1,2/1,

+

++

+++ Δ

−−=⎟

⎠⎞

⎜⎝⎛∑ ⋅+

j

jin

jin

jiv

jinbnbnb

vjijiP

v

yppbvava **

しかしu*とv*は連続の式の離散式(2.60)を満足しない.そこ

で圧力および速度の補正を行って式(2.61)を満足させることを考える.

(2.63)jijin

jin ppp ,,,

1 δ+=+

jijijin uuu ,2/1,2/1,2/1

1+++

+ += δ*

2/1,2/1,2/1,1

++++ += jijiji

n vvv δ*

(2.64a)

(2.64b)

Page 136: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

136

(2.65a)

(2.65b)

式(2.63)と式(2.64)を式(2.60)に代入した後に式(2.62)との差を計算するとδuおよびδvとδpとの関係式を得る.

ここで,解法が簡単になるように式(2.65)の左辺第2項の総和の項を消去してδuおよびδvとδpとの関係式を簡略化する.

(2.66a)

(2.66b)

( )2/1

,,1

,2/1,2/1,2/1

+

+

+++ Δ

−−=⎟

⎠⎞

⎜⎝⎛∑ ⋅+

i

jiji

jinbnbnb

ujijiP

u

xpp

uauaδδ

δδ

( )2/1

,1,

2/1,2/1,2/1,

+

+

+++ Δ

−−=⎟

⎠⎞

⎜⎝⎛∑ ⋅+

j

jiji

jinbnbnb

vjijiP

v

ypp

vavaδδ

δδ

( ) 2/1

,,1

,2/1,2/1

1

+

+

++ Δ

−−=

i

jiji

jiPuji x

pp

au

δδδ

( ) 2/1

,1,

2/1,2/1,

1

+

+

++ Δ

−−=

j

jiji

jiPvji y

pp

av

δδδ

Page 137: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

137

(2.67)

圧力補正量δpの方程式は式(2.64),(2.66)を連続の式(2.61)

に代入して得られる.

ここで,

( ) ( )

( ) ( )( ) jiS

j

jiji

jiPv

j

jiji

jiPv

j

i

jiji

jiPu

i

jiji

jiPu

i

D

ypp

aypp

ay

xpp

axpp

ax

,

2/1

1,,

2/1,2/1

,1,

2/1,

2/1

,1,

,2/12/1

,,1

,2/1

111

111

*=

⎥⎥⎦

⎢⎢⎣

Δ

−−

Δ

Δ+

⎥⎥⎦

⎢⎢⎣

Δ

−−

Δ

Δ

−+

+

+

−+

+

+

δδδδ

δδδδ

( )j

jiji

i

jijijiS y

vvx

uuDΔ

−+

Δ−

= −+−+ 2/1,2/1,,2/1,2/1,

*****

Page 138: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

138

式(2.67)を解いて得られる圧力補正量δpを用いて式(2.64),

(2.66)により速度補正を行うと,連続の式を離散的に満足する速度un+1およびvn+1が得られる.圧力の補正には式(2.63)ではなく緩和係数αp(0<αp≦1)を導入した次式を用いる.

jipjin

jin ppp ,,,

1 δα+=+(2.68)

緩和係数αpの導入は式(2.65)から式(2.66)への簡略化の際に生じる誤差のために必要となる.また,速度場が連続の式を満足するように式(2.67)が定められているので速度の補正に緩和係数は導入しない.

Page 139: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

139

SIMPLE法の計算手順1)初期条件としてun,vn,pnを与え,2)式(2.62)を解いてu*とv*を求め,3)式(2.67)を解いてδpを求め,

4)式(2.64)および式(2.66)による速度補正,および式(2.68)による圧力補正を通してun+1,vn+1,pn+1を求め,

5)un+1,vn+1,pn+1をun,vn,pnとして 1)に戻る.

以上の手順を,非定常計算の場合には必要な時間まで,定常計算の場合には収束条件が満足されるまで繰り返す.

Page 140: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

140

なお,式(2.62)のような輸送方程式の離散式を繰り返し法で解く場合,SIMPLE法系統の解法では減速緩和法を導入して数値計算の安定性を高めることが行われる.式(2.62a)に減速緩和法を導入すれば次式を得る.

( )

( ) jipre

jiPu

u

u

i

jin

jin

jiu

jinbnbnb

uji

u

jiPu

uax

ppb

uaua

,2/1,2/12/1

,,1,2/1

,2/1,2/1

,2/1

1++

+

++

++

+

−+

Δ−

−=

⎟⎠⎞

⎜⎝⎛∑ ⋅+

αα

α**

(2.69)

ここでuprei+1/2,jは繰り返し計算における1つ前のステップでのu*の値であ

り,αuは減速緩和係数(0<αu≦1)である.速度vに対しても,また一般

的に輸送方程式の離散式を解く場合にも同様の減速緩和法が導入される.

SIMPLE法の問題点は,2つのパラメータ(αuとαp)を流れ場に応じて定めなければならないこと,および解の収束性がαpの値に大きく依存することである.Patankar (8)はαu=0.5,αp=0.8を推奨しているが,その後の研究でαu =1-αpとすれば概ね後に述べるSIMPLEC法と

同等の収束性が得られることが示されている(9).

Page 141: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

141

補足:行列分解によるSIMPLE法の計算アルゴリズムの導出(1/3)

式(2.60),式(2.61)をまとめて行列表示すれば次式となる.

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡+

+

p

ubb

pu

1

1

0 n

n

DGA

ただし,Gは離散的勾配演算子,Dは離散的発散演算子であり,これら離

散的空間演算子では境界条件も考慮されているものとする.境界条件から生じる項はNS方程式および連続の式それぞれに対してbuおよびbpに含ま

れているものとする.

ここで,pn+1=pn+δp’を代入し,左辺の行列をLU分解すると以下を得る.

⎥⎥⎦

⎢⎢⎣

⎡ −=⎥

⎤⎢⎣

′⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡−

+−

−p

ub

pbpδ

u nn GI

GAIGDAD

A 11

1 0

0

Page 142: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

142

補足:行列分解によるSIMPLE法の計算アルゴリズムの導出(2/3)

この式は次の2式へと分解できる.

diag()は行列の対角項を抽出する関数で,αpは上記対角化近似における

補正係数である.

⎥⎥⎦

⎢⎢⎣

⎡ −=⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡− −

p

ub

pbδpu nG

GDADA

*

*

10

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

′⎥⎦

⎤⎢⎣

⎡ +−

*

*11

0 δpu

pδun

IGAI

さらに,A-1 に対して次の近似を導入する.

( )[ ] 11 diag1 −− ≈ AApα

Page 143: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

143

補足:行列分解によるSIMPLE法の計算アルゴリズムの導出(3/3)

最後に,δp*=αpδpとおいた後に分解された行列を展開して整理すると

次の計算アルゴリズムを得る.

これはSIMPLE法の計算アルゴリズムである.

以上の導出から,SIMPLE法の圧力補正係数αpの導入はA-1の近似に伴う

ものであることが理解される.

nGA pbu u −=*

( )[ ] pbuδp −=− *1diag DGAD

( )[ ] δpuu GAn 1*1 diag −+ −=

δppp pnn α+=+1

Page 144: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

144

2・3・2 SIMPLER法

(2.70a)

(2.70b)

SIMPLE法の収束性を改善する解法としてSIMPLER法(SIMPLE Revised)が提案されている(8).SIMPLE法の問題点は圧力補正における減速緩和にあるので,SIMPLER法では圧力補正量は連続の式を満足させるためだけに用い,圧力は補正計算をせずに運動方程式から直接求める.この手順を説明するため,まず式(2.60)を変形した次式を導入する.

( ) ( ) 2/1

,1

,11

,2/1,2/1

,2/1

1

,2/11 1

+

++

+

++

+

+

++

Δ−

−⎟⎠⎞

⎜⎝⎛ ∑ ⋅−

=i

jin

jin

jiPu

jiPu

jinbnb

nnb

uu

jin

xpp

aa

uabu

( ) ( ) 2/1

,1

1,1

2/1,2/1,

2/1,

1

2/1,1 1

+

++

+

++

+

+

++

Δ−

−⎟⎠⎞

⎜⎝⎛ ∑ ⋅−

=j

jin

jin

jiPv

jiPv

jinbnb

nnb

vv

jin

ypp

aa

vabv

Page 145: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

145

(2.71a)

(2.71b)

式(2.70)の右辺第1項は速度のみで計算される.また解が収束した時点でun+1=unとなることを考慮し,次の中間速度uおよびvを定義する.

^^

( ) jiPu

jinbnb

nnb

uu

ji a

uabu

,2/1

,2/1,2/1ˆ

+

++

⎟⎠⎞

⎜⎝⎛ ∑ ⋅−

=

( ) 2/1,

2/1,2/1,ˆ

+

++

⎟⎠⎞

⎜⎝⎛ ∑ ⋅−

=jiP

vjinb

nbn

nbvv

ji a

vabv

この中間速度は既知量である.また,式(2.70)の右辺第1項をuおよびvで置き換え,この変形に伴う圧力をpnとすれば次

式を得る.^ ^

(2.72a)

(2.72b)

( ) 2/1

,,1

,2/1,2/1,2/1

1 1ˆ+

+

+++

+

Δ−

−=i

jin

jin

jiPujiji

n

xpp

auu

( ) 2/1

,1,

2/1,2/1,2/1,

1 1ˆ+

+

+++

+

Δ−

−=j

jin

jin

jiPvjiji

n

ypp

avv

Page 146: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

146

式(2.72)を連続の式の離散式(2.61)に代入すれば圧力pnの方

程式が得られる.

(2.73)

ここで,

( ) ( )

( ) ( )( ) jiS

j

jin

jin

jiPv

j

jin

jin

jiPv

j

i

jin

jin

jiPu

i

jin

jin

jiPu

i

D

ypp

aypp

ay

xpp

axpp

ax

,

2/1

1,,

2/1,2/1

,1,

2/1,

2/1

,1,

,2/12/1

,,1

,2/1

ˆ

111

111

=

⎥⎥⎦

⎢⎢⎣

Δ−

−Δ

−Δ

+

⎥⎥⎦

⎢⎢⎣

Δ−

−Δ

−Δ

−+

+

+

−+

+

+

( )j

jiji

i

jijijiS y

vvx

uuD

Δ

−+

Δ

−= −+−+ 2/1,2/1,,2/1,2/1

,

ˆˆˆˆˆ

あとはSIMPLE法と同様にpnを用いて速度の予測値u*およびv*の方程式を解いた後に圧力補正量δpの方程式を解き速

度補正を行う.ただしその際に圧力の補正は行わない.

Page 147: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

147

SIMPLER法の計算手順1)初期条件としてun,vnを与え,2)式(2.71)から中間速度uおよびvを計算し,3)式(2.73)を解いて圧力pnを求め,4)式(2.62)を解いてu*とv*を求め,5)式(2.67)を解いてδpを求め,

6)式(2.64)および式(2.66)による速度補正を通して速度成分un+1,vn+1を求め,

7)un+1,vn+1をun,vnとして 1)に戻る.

以上の手順を,非定常計算の場合には必要な時間まで,定常計算の場合には収束条件が満足されるまで繰り返す.

SIMPLER法では圧力方程式を2回(式(2.67)と式(2.73))解く必要があるので時間進行1ステップあたりの計算時間はSIMPLE法よりもかかるが,圧力の緩和係数は使用しないのでその最適値を探す必要がなく,定常計算における収束性は一般的にSIMPLE法よりも優れている.なお,式(2.62)を繰り返し法で解く過程では式(2.69)と同様の減速緩和法が導入される.

^ ^

Page 148: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

148

2・3・3 SIMPLEC法

(2.74a)

(2.74b)

SIMPLE法において圧力の緩和係数 を導入しなければならないのは速度補正式の導出の過程における式(2.65)から式(2.66)への大胆な近似に起因する.速度補正式の導出の過程においてSIMPLE法よりは妥当な近似を用いて速度補正式を導出するのがSIMPLEC法である(9) .SIMPLEC法の説明のため,まず式(2.65)を次の様に書き直す.

( )2/1

,,1

,2/1,2/1

,2/1 +

+

++

+ Δ

−−=⎥⎦

⎤⎢⎣⎡∑ −⋅+⎟

⎠⎞

⎜⎝⎛ ∑+

i

jiji

jinbPnbnb

uji

jinbnb

uP

u

xpp

uuauaaδδ

δδδ

( )2/1

,1,

2/1,2/1,

2/1, +

+

++

+ Δ

−−=⎥⎦

⎤⎢⎣⎡∑ −⋅+⎟

⎠⎞

⎜⎝⎛ ∑+

j

jiji

jinbPnbnb

vji

jinbnb

vP

v

ypp

vvavaaδδ

δδδ

速度補正量は空間に連続的に分布すると考えられるので式(2.74)の左辺第2項は他の項よりも値が小さいことが期待される.

Page 149: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

149

(2.75a)

(2.75b)

これより,式(2.74)の左辺第2項を消去してδuおよびδvとδpとの関係式が与えられる.

2/1

,,1

,2/1

,2/11

+

+

+

+ Δ

⎟⎠⎞

⎜⎝⎛ ∑+

−=i

jiji

jinbnb

uP

uji x

pp

aau

δδδ

2/1

,1,

2/1,

2/1,1

+

+

+

+ Δ

⎟⎠⎞

⎜⎝⎛ ∑+

−=j

jiji

jinbnb

vP

vji y

pp

aav

δδδ

Page 150: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

150

圧力補正量δpの方程式は式(2.64)と式(2.75)を連続の式

(2.61)に代入して得られる.

(2.76)( ) jiS

j

jiji

jinbnb

vP

vj

jiji

jinbnb

vP

vj

i

jiji

jinbnb

uP

ui

jiji

jinbnb

uP

ui

D

ypp

aaypp

aay

xpp

aaxpp

aax

,

2/1

1,,

2/1,

2/1

,1,

2/1,

2/1

,1,

,2/1

2/1

,,1

,2/1

111

111

*=

⎥⎥⎥⎥

⎢⎢⎢⎢

Δ

⎟⎠⎞

⎜⎝⎛ ∑+

−Δ

⎟⎠⎞

⎜⎝⎛ ∑+Δ

+

⎥⎥⎥⎥

⎢⎢⎢⎢

Δ

⎟⎠⎞

⎜⎝⎛ ∑+

−Δ

⎟⎠⎞

⎜⎝⎛ ∑+Δ

+

+

+

+

+

+

δδδδ

δδδδ

上式を解いて得られる圧力補正量δpを用いて式(2.64),式

(2.75)により速度補正を行うと連続の式を離散的に満足する速度un+1およびvn+1が得られる.

SIMPLE法とは異なり,SIMPLEC法では圧力の補正に対する緩和計算は必要なく式(2.63)を直接用いる.

Page 151: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

151

SIMPLEC法の計算手順1)初期条件としてun,vn,pnを与え,2)式(2.62)を解いてu*とv*を求め,3)式(2.76)を解いてδpを求め,

4)式(2.64)および式(2.75)による速度補正,および式(2.63)による圧力補正を通してun+1,vn+1,pn+1を求め,

5)un+1,vn+1,pn+1をun+1,vn+1,pn+1として1)に戻る.

以上の手順を,非定常計算の場合には必要な時間まで,定常計算の場合には収束条件が満足されるまで繰り返す.

SIMPLEC法では,SIMPLER法と同様に圧力の緩和係数を導入する必要がないことが大きな利点である.また,SIMPLEC法で解かれる圧力補正量の式(2.76)および速度補正量の定義式(2.75)はSIMPLE法で対応する式の係数が変更されているだけであるので,SIMPLEC法の時間進行1ステップあたりの計算時間はSIMPLE法とあまり変わらずSIMPLER法よりは少なくなる.なお,式(2.62)を繰り返し法で解く過程では式(2.69)と同様の減速緩和法が導入される.

Page 152: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

152

第2章の参考文献(1/2)(1) Harlow, F.H. and Welch, J.E., Numerical calculation of time-

dependent viscous incompressible flow of fluid with free surface, Phys. Fluids, 8 (1965.) 2182-2189.

(2) Amsden, A.A. and Harlow, F.H., The SMAC method: A numerical technique for calculating incompressible fluid flows, Los Alamos scientific laboratory of the Univ. of California, Rep. No. LA-4370 (1970).

(3) Hirt, C.W. and Cook, J.L., Calculating three-dimensional flows around structures and over rough terrain, J. Comput. Phys., 10 (1972) 324-340.

(4) Kim, J. and Moin, P., Application of a fractional-step method to incompressible Navier-Stokes equations, J. Comput. Phys., 5.9 (1985.) 308-323.

(5) Perot, J.B., An analysis of the fractional step method, J. Comput. Phys., 108 (1993) 5.1-5.8.

Page 153: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

153

第2章の参考文献(2/2)(6) Dukowicz, J.K. and Dvinsky, A.S., Approximate factorization

as a high order splitting for the implicit incompressible flow equations, J. Comput. Phys., 102 (1992) 336-347.

(7) Patanker, S.V. and Spalding, D.B., A calculation procedure for heat, mass and momentum transfer in three-dimensional parabolic flows, Int. J. Heat Mass Transfer, 15. (1972) 1787-1806.

(8) Patankar S.V., Numerical heat transfer and fluid flow (McGraw-Hill, New York) (1980), (水谷・香月訳, コンピュータによる熱移動と流れの数値解析 (森北出版) (1985.)).

(9) Van Doormaal, J.P. and Raithby, G.D., Enhancements of the SIMPLE method for predicting incompressible fluid flows, Numerical Heat Transfer, 7 (1984) 147-163.

(10) 日本機械学会,計算力学ハンドブック(第Ⅱ巻) (2006),第3.1節(pp.32-46).

Page 154: H21年度・4日目(2009年8月29日(土)) 流体数 …fluid.web.nitech.ac.jp/Gotoh_Home_page/Edu/Public_course/...1 中部CAE懇話会:基礎講座 第7回(H21年度)「流体伝熱基礎講座」

154

1.時間進行法1・1 線形多段解法

1・1・1 アダムス・バシュフォース公式1・1・2 アダムス・モルトン公式1・1・3 後退差分公式

1・2 ルンゲ・クッタ法1・2・1 陽的ルンゲ・クッタ法1・2・2 陰的ルンゲ・クッタ法

1・3 時間進行法の安定性解析1・3・1 線形多段解法の絶対安定領域1・3・2 ルンゲ・クッタ法の絶対安定領域

2.非圧縮性流れの計算アルゴリズム2・1 差分格子系とMAC法系統の解法

2・1・1 レギュラー格子を用いる差分法の問題点2・1・2 MAC法とスタガード格子2・1・3 SMAC法2・1・4 SOLA法(HSMAC法)

2・2 フラクショナル・ステップ法2・2・1フラクショナル・ステップ法と分離誤差2・2・2 DDのフラクショナル・ステップ法

2・3 SIMPLE法系統の解法2・3・1 SIMPLE法2・3・2 SIMPLER法2・3・3 SIMPLEC法

講義内容

午前( 9:30-12:30)

午後(13:30-16:30)