拡散方程式の数値解法 - hiroshima...

13
拡散方程式の数値解法

Upload: others

Post on 15-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

拡散方程式の数値解法

Page 2: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

数値解法:差分法

関数   を  のまわりで3次の項まで Taylor 展開.

!

U(x)

!

x

偏微分方程式の数値解法の中で, 元の微分方程式の微分の部分を差分で置き換えて解く方法を差分法と言う.

Page 3: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

の近似と誤差

!

" U (x)

!

" U (x) =U(x + #x) $U(x)

#x+%(#x)

!

" U (x) =U(x) #U(x # $x)

$x+%($x)

!

" U (x) =U(x + #x) $U(x $ #x)

2#x+%(#x

2)

を を用いて近似.と(1)

を を用いて近似.と(2)

を を用いて近似.と(3)

Page 4: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

の差分近似

!

" U (x)

前進差分, 右側差分

後退差分, 左側差分

中心差分

Page 5: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

の差分近似

を を用いて近似.

中心2階差分, 離散ラプラシアン

Page 6: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

区間の離散化のしかた

京都方式

等分

札幌方式

L

( i = 0, 1, … N )

( i = 1, 2, … N )

!

"x= L /N

N 等分

Page 7: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

空間と時間の離散化

( i = 1, 2, … N )

Page 8: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

拡散方程式の差分化

時間微分は前進差分で,空間微分は中心2階差分で

( i = 1, 2, … N , n = 0, 1, … )

Page 9: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

境界条件の処理

ディリクレ条件

差分のcellを両側に1つずつ広げて,そこでの値を とおく.

!

uN +1

n

!

uN

n!

u0

n

!

u1

n

!

u0

n+ u

1

n

2" u(0,t

n) = 0

!

uN

n+ u

N +1

n

2" u(L,t

n) = 0

!

u0

n= "u

1

n

!

uN +1

n= "u

N

n

!

uN +1

n

!

u0

n

Page 10: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

境界条件の処理

ノイマン条件

周期境界条件!

u0

n" u

1

n

2#$u(0,t

n)

$x= 0

!

uN

n" u

N +1

n

2#$u(L,t

n)

$x= 0

!

u0

n= u

1

n

!

uN +1

n= u

N

n

!

u0

n= u

N

n

!

uN +1

n= u

1

n

Page 11: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

拡散方程式

境界条件

初期条件

ディリクレ条件ノイマン条件

周期境界条件

初期値境界値問題の計算スキーム

( i = 1, 2, … N , n = 0, 1, … )

!

u0

n= u

1

n

!

uN +1

n= u

N

n

!

u0

n= u

N

n

!

uN +1

n= u

1

n

!

u0

n= "u

1

n

!

uN +1

n= "u

N

n

( i = 1, 2, … N )

Page 12: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

新しいステップの計算

とおくと

Explicit scheme

Page 13: 拡散方程式の数値解法 - Hiroshima Universityawa/SUURI_11/kakusan.pdf数値解法:差分法 関数 を のまわりで3次の項まで Taylor 展開. U(x) x 偏微分方程式の数値解法の中で,

計算手順

偏微分方程式境界条件初期条件計算の初め

( i = 1, 2, … N )

( i = 1, 2, … N ) N