熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf ·...

13
熱伝導現象のシミュレーション(3) 〜非定常2次元問題〜 担当: 高安 亮紀

Upload: others

Post on 14-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

熱伝導現象のシミュレーション(3)  〜非定常2次元問題〜

担当:  高安 亮紀

Page 2: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

目的

・1次元熱伝導同様に、非定常の2次元熱伝導に  ついて、差分法で近似解を算出する方法を学ぶ    【演習】  ・非定常の2次元熱伝導を陽解法、陰解法、クランク・ニコルソン法で作成し、それぞれをΔt刻みでグラフに表示できるようにする。        「熱伝導現象のシミュレーション(1),(2)」をしっかり理解してから                          授業に臨むこと。

2  

Page 3: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・2次元熱伝導現象(非定常)  

Γ・・・板の周り

Ω・・・2次元の板

・一定の火力で板を裏側から熱し続ける。時間の刻み幅をΔtとし、ステップ毎に増加する温度を可視化する。 ※板の周りの温度は固定

Page 4: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・単位時間あたりに増加する温度を近似

・単位時間あたりに増加する温度を、  時間による微分と座標x、yによる2階微分で表すことができる。  

・二次元熱伝導(定常)は以下のようにできた。

4

・・・板の周り

・・・板の内部

∂u∂t−∂2u∂x2

+∂2u∂y2

#

$%

&

'(= f

u = 0 ・・・板の周り

・・・板の内部

−∂2u∂x2

+∂2u∂y2

#

$%

&

'(= f

u = 0

Page 5: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

【復習】2次元熱伝導現象の離散化

節点(格子点)

●ui ●ui

●ui+m

●ui-­‐1

●ui-­‐m

●ui+1

∂2u∂x2

≈1h2

ui+1 − 2ui +ui−1( )

∂2u∂y2

≈1h2

ui+m − 2ui +ui−m( )

縦:x軸方向

横:y軸方向 h

Page 6: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

         

・差分法で2次元熱伝導方程式を離散化

Ω

u1 ~ um = 0ukm = 0,k =1~ mu(k−1)m+1 = 0,k =1~ mu(m−1)m+1 ~ um2 = 0①

② ③

④ ①

【in  Ω】

【on  Γ】

離散化→次ページで陽解法、陰解法、クランクニコルソン法を説明  

∂u∂t−∂2u∂x2

+∂2u∂y2

#

$%

&

'(= f

Page 7: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・陽解法(Explicit  method)

・時間に対して前進差分をとると、方程式は以下となる。  

7

※時間の刻み幅Δt、位置の刻み幅h、分割数m

・整理すると以下のような漸化式となり、kステップ目の温度から  k+1ステップ目の温度を容易に求められる。  

ui(k+1) −ui

(k )

Δt−u(k )i−m +u

(k )i−1 − 4ui

(k ) +u(k )i+1 +u(k )i+m

h2= f

ui(k+1) = (1− 4c)ui

(k ) + cui−m(k ) + cui−1

(k ) + cu(k )i+1 + cu(k )i+m + fΔt

h = dm−1

, c = Δth2

#

$%

&

'(

・収束条件:c≦1/4  

Page 8: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・陽解法のプログラムを作成

heat2d.mと違うのはココだけ!

(1)u0(初期温度)からdt時間後の温度uを求める  

Page 9: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・陽解法のプログラムを作成

(2)タイムステップdt毎にグラフに出力し、loop回繰り返す

Page 10: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・整理すると、以下のようになり、Δt毎に方程式を求めなければいけないため、陽解法より煩雑となるが、常に数値的に安定する。  

・陰解法(Implicit  method) ・時間に対して後退差分をとると、方程式は以下となる。  

ui(k+1) −ui

(k )

Δt−ui−m(k+1) +ui−1

(k+1) − 4ui(k+1) +ui+1

(k+1) +ui+m(k+1)(k+1)

h2= f

10

※時間の刻み幅Δt、位置の刻み幅h、分割数m

(1+ 4c)ui(k+1) − cui−m

(k+1) − cui−1(k+1) − cui+1

(k+1) − cui+m(k+1) = ui

(k ) + fΔt

h = dm−1

, c = Δth2

#

$%

&

'(

Page 11: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

・クランク-­‐ニコルソン法(Crank-­‐Nicolson  method)

11

・kステップ目とk+1ステップ目の平均を取る方法。方程式は以下となる。  

ui(k+1) −ui

(k )

Δt−12ui−m(k ) +ui−1

(k ) − 4ui(k ) +ui+1

(k ) +ui+m(k )

h2+ui−m(k+1) +ui−1

(k+1) − 4ui(k+1) +ui+1

(k+1) +ui+m(k+1)

h2!

"#

$

%&= f

※時間の刻み幅Δt、位置の刻み幅h、分割数m

(2+ 4c)ui(k+1) − cui−m

(k+1) − cui−1(k+1) − cui+1

(k+1) − cui+m(k+1)

= (2− 4c)ui(k ) + cui−m

(k ) + cui−1(k ) + cui+1

(k ) + cui+m(k ) + 2 fΔt

h = dm−1

, c = Δth2

#

$%

&

'(

・整理すると以下のようになり、Δt毎に方程式を求めなければ  ならないが、最も正確な数値を求めることができる。  

Page 12: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

【演習1】

•  陰解法、クランク-­‐ニコルソン法それぞれの          プログラムを作成し、グラフを表示する  

–  ヒント1:heat2d.mを基に作成する        (端のu=0となる箇所は全く同じ)  –  ヒント2:前回作成したtheat2d2(1次元の陰解法),        theat2d3(1次元クランクニコルソン法)を参照する  –  ヒント3:陽解法同様、アルゴリズムとグラフを表示するプログラム、        それぞれ作成  

 

Page 13: 熱伝導現象のシミュレーション(3)oishi.info.waseda.ac.jp/~takayasu/classes/slides/sim_heat3.pdf · • 陰解法、クランクFニコルソン法それぞれの$ $$$$プログラムを作成し、グラフを表示する$

【演習2】

•  GUIからmethodを選択し、グラフを表示

・popup-­‐menuで選択 ・「プロット」ボタンを押下し、グラフ表示

・陽解法  を選択