スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

FTCSスキームと熱伝導方程式の差分化

今回は、前進差分スキームと中心差分スキームを組み合わせたFTCSスキームについて説明します。
そして、このFTCSスキームを用いて、実際に熱伝導方程式を差分化してみます。

Tags : 数学 数値解析
差分スキームとは、微分方程式を差分方程式に変換するときの手法のことです。
ちなみに、スキーム(scheme)は、計画, 構想という意味です。

FTCSスキームは、時間(t)と空間(xやyやz)の偏微分を含んだ偏微分方程式を差分化するための、最も有名な差分スキームです。

FTCSは、ええと、Forward-Time Central-Spaceの略です。Wikipediaからカンニングしました。
直訳すると、「時間について前方に、空間について中央に」といった感じでしょうか。

具体的には、(名前からも予測できるかと思いますが、)
・時間微分については前進差分近似
・空間微分については中心差分近似
を適用する方法です。


ためしに、1次元の熱伝導方程式
∂u/∂t = α・∂2u/∂x2 ……(*)
( αは正の定数 )
( u = u(x,t) は2変数関数で、物理的には時刻t,位置xでの温度を表します。 )
を差分化してみましょう。

まず、連続的な変数を離散的な数列に変換します。
・変数xを間隔⊿xで離散化し、i番目のxをxi
・変数tを間隔⊿tで離散化し、n番目のtをtn
と書くことにします。
記号の意味から、xi+1=xi+⊿x などが成り立ちます。

(*)の左辺については、1階の導関数なので前回の前進差分式がそのまま使えます。
すなわち
∂u/∂t ≒ { ud(xi,tn+1)-ud(xi,tn) }/⊿t
となります。
ここで、udはuを差分化した関数です。uとは別物だということを強調するためにあえて別の記号を使います。

一方、(*)の右辺については、2階の導関数なので前回の中心差分式をそのまま使うことはできません。
しかし、少し工夫すると次のように書けることが分かります。(係数αは省略)
2u/∂x2
≒ (∂/∂x){ ud(xi+1,tn)-ud(xi-1,tn) }/(2⊿x)
= (∂/∂x){ ud(xi+1,tn) }/(2⊿x) - (∂/∂x){ ud(xi-1,tn) }/(2⊿x)
≒ { ud(xi+2,tn)-ud(xi,tn) }/(4⊿x2) - { ud(xi,tn)-ud(xi-2,tn) }/(4⊿x2)
= { ud(xi+2,tn) -2ud(xi,tn) + ud(xi-2,tn) }/(4⊿x2)

ここで、⊿xは小さい方がいいので、普通は2⊿xを⊿xと置き直して
{ ud(xi+1,tn) -2ud(xi,tn) + ud(xi-1tn) }/(⊿x2)
とします。これが2階導関数の中心差分近似式です。

以上をまとめると、熱伝導方程式(*)はFTCSスキームを用いて次のように差分化されます。
{ ud(xi,tn+1)-ud(xi,tn) }/⊿t
= α・{ ud(xi+1,tn) -2ud(xi,tn) + ud(xi-1,tn) }/(⊿x2)



次回は、今回求めた差分スキームを使って、熱伝導方程式の数値解析を行います。(多分。気分しだいで変わるかも)
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

fura2

Author : fura2
数学・コンピュータを中心に、考えたこと・やったことを書いていきます。

誤植等を含め、間違いはご指摘いただければ幸いです。

FC2カウンター
検索フォーム
最新記事
最新コメント
最新トラックバック
月別アーカイブ
リンク
RSSリンクの表示
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。