• Tidak ada hasil yang ditemukan

一次元移流方程式の数値解法

N/A
N/A
Protected

Academic year: 2025

Membagikan "一次元移流方程式の数値解法"

Copied!
5
0
0

Teks penuh

(1)

GFDワークノート 一次元移流方程式の数値解法 1

一次元移流方程式の数値解法

1.1 2 次精度中心差分を用いた線形移流方程式の離散化

1次元線形移流方程式は以下の様に表される.

∂ u

∂t +c∂ u

∂x = const. (1.1.1)

式(??)の一般解は,

u=f(x−ct) (1.1.2)

である. 最も簡単な離散化は,時間方向にはオイラースキーム(前進差分),空間方向 には上流差分を用いたものである.

un+1j −unj

t +cunj −unj1

x = 0 (1.1.3)

この離散化方法の精度は,誤差

ϵ≡unj −u(jx, nt) (1.1.4)

(2)

図 1.1: t−x平面において,式(??)で考えている格子点を示した図. 赤丸で示され た点が考えている格子点である.

ϵ=O(∆t,x) (1.1.5)

であり,時間方向,空間方向共に1次精度であることがわかる.

ここで,もう少し精度の良い離散化方法を考えてみる. 空間微分を中心差分を用い て離散化すると,

∂ uj

∂t =−cuj+1−uj1

2∆x (1.1.6)

となる. また,時間方向にリープフロッグスキームを用いて離散化すると,

(3)

GFDワークノート 一次元移流方程式の数値解法 3

un+1j −un−1j

2∆t =

(

−cuj+1−uj1

2∆x )n

=−cunj+1−unj1

2∆x (1.1.7)

となる. 式(??)の性質を知るため,uのとあるフーリエ成分(波数成分)を取り出し て考えることにする. まず,uを以下のように表す.

u(x, t) = Re [

k=0

Uk(t)eikx ]

unj = Re [

k=0

Uk(nt)eikjx ]

(1.1.8)

ここで,式(??)に式(??)のunj を代入すると,

Ukn+1eik(jx)−Ukn1eik(jx)

2∆t =−cUkneik[(j+1)∆x]−Ukneik[(j1)∆x]

2∆x

=−cUkne−ikx−Ukneikx

2∆x eik(jx)

=cUkn[2isin(kx)]

2∆x eik(jx) Ukn+1−Ukn1

2∆t =i [ c

xsin(kx) ]

Ukn (1.1.9)

ここで,

p≡ ct

x sin(kx) とおくと,式(??)は以下のように書き換えられる.

[ ]

(4)

また,

ω≡ c

xsin(kx)

とおくと,式(??)は振動方程式に一致する. リープフロッグスキームを用いた場合 の振動方程式の安定性条件は|p| ≤1であるため,これを式(??)について考えると,

|p|= ct

x sin(kx) 1 ここで|sin(kx)| ≤1であるため,

|p| ≤ ct

x

=|c|t

x 1 (1.1.11)

式(??)はCFL条件と呼ばれる.

1.1.1 高周波成分を用いた安定性の考察

計算が発散してしまわないためには,すべての場合において|p| ≤ 1が成り立てば 良い. よって,|p|が最大となる波数kの値,及びそのときの波長を考える. ∆x及び

tを固定したとき,式(??)において|p|が最大となるのは,sin(kx)が極値を取る ときである. この条件に当てはまる最小の波数kの値はk = π/(2∆x)であり, こ の波数kに対応する波長(つまり式(??)において|p|が最大となる最大の波長)は 2π/k= 4∆xである. これは,図??より,解像可能な最小の波長の二倍である. また,

|p|が最大となる2π/k = 4∆xよりも短い波長については, 解像可能な最小の波長 よりも短くなってしまうため,波としては計算結果に現れない.

(5)

GFDワークノート 一次元移流方程式の数値解法 5

図1.2: 解像可能な最小の波長を持つ波と,|p|が最大となる波長を持つ波を示した 図. 青い線が解像可能な最小の波長を持つ波,赤い線が式(??)において|p|が最大 となる最大の波長を持つ波を示している. また,横軸が空間方向の波長,縦軸がuの 値である.

Referensi

Dokumen terkait

あいさんが家を出発してから x 分後にみきさん に追い着くとすると,次のような方程式をつくるこ ともできる。.. 7⑴ 自動車工場に行く人数は2x-3人と表すことがで

多変数多項式の割り算(余りを求める) ⇓ Gr¨obner基底 (広中-Buchberger の algorithm) 多変数多項式環のidealの標準的な生成系を 組織的に与えるアルゴリズム 連立方程式 −→(一般には高次の)1 変数方程式へ (変数消去)... では、 この解法を現代の記号法で見ていこう

拡散方程式の陰的数値解法 拡散方程式の後退差分スキーム 以下の1次元拡散方程式を考える.. 1式を時間方向には1段階差分スキーム,空間方向には 2次精度中心差分を用い

摩擦方程式で考察したとき と同様にK =κ2π ∆x 2 ∆tとおいて安定性を議論する... 摩擦方程式からオイラースキームの安定性は 0< K ≤1

1.2 楽屋裏の諸事情 常微分方程式の初期値問題の話をしていて、解の存在と一意性の話は有名であるが、「そう いうのばかりやるのはおかしい」という意見もあって、意外と正面から説明されないことが 多い。 私自身も、最初は例をたくさん見ることが大事だから、入門講義では解ける方程式の話をた

gx = 0 という一つの山があるものです。このプログラムの実行の仕方は上のものと同じです。こちらは 是非とも Neumann 境界条件の場合も試してみて、波が境界で反射される仕方を比べてみてくだ さい。 上の二つの例では、いずれも g = 0 としてあります。これは時刻 t = 0 で弦をそっと放した (=速度が

ただしK > 1のとき, 解は1ステップ毎に符号が変わってしまう*2 ため, 物理的要請からK... ただし2≤Kのとき, 解は1ステップ毎に 符号が変わってしまうため,

計算を続けますか?続けたいなら 1 を入力して下さい。 と尋ねて来るようになっています。止めたいなら、例えば 0 を入力して下さい。 問題7-1 次のことを実験しなさい。1 初期値を変えてみる。2 λ を変えてみる。特に条件 0< λ≤1/2 を満足しない場合を試す。 問題7-2 プログラムを書き換えて、Neumann 問題 4,5,6N