編集可能
2012年8月8日

格子幅Δ=1っていいの?

@ignis_fatuus さんと話していた「格子幅Δは、普通Δ<<1として、2次以降を無視しているが、Δ=1としている場合もあるけど良いのか」という話。 あとで読み返すための主に私用まとめ。
0
青子守歌 @aokomoriuta

ところで、なぜみんな流体計算というと格子法とくに有限差分法から手を付けるのか。理論が簡単ってのは通じない(差分スキームやチューニングパラメーター選びが大変な )ことぐらいみんな分かってるはずなのに。

2012-08-07 16:50:17
青子守歌 @aokomoriuta

dy/dxを(y_i - y_j)/(x_i - x_j)とするのが直感的というなら、それは単に感覚の違いな気がするしなぁ・・・。

2012-08-07 16:51:16
青子守歌 @aokomoriuta

だって、差分スキームとかconsistency, convergence, stabilityとかいちいちめんどくさい。

2012-08-07 16:53:00
いぐにすさん @ignis_fatuus

@aokomoriuta 離散化の手法がテイラー展開から簡単に出せるし、まあ基本な感じがしますけどね

2012-08-07 16:54:14
青子守歌 @aokomoriuta

@ignis_fatuus まぁ高校程度の数学の知識で導出できるというのはその通りかもですねぇ。でも私は最初聞いた時「二次以降はほんとにいいの?」って思いました。そういう意味では有限要素法みたいな弱形式の方が納得できるんですよ。

2012-08-07 16:59:07
青子守歌 @aokomoriuta

微分積分と同様に変分も教えればいいのに。そんな難しいことじゃないし。

2012-08-07 17:02:09
いぐにすさん @ignis_fatuus

@aokomoriuta そういえば今思い出しましたけど、たまに差分法でΔx=1としてる場合がありますけど、2次以降はどう解釈すればいいんでしょう

2012-08-07 17:03:13
いぐにすさん @ignis_fatuus

@aokomoriuta Δx^3とかはΔxが微小であれば無視できますよね?そうやって差分スキームを構築するのはいいのですが、実際差分法を使う時Δx=1とするとΔx^3=1なわけで...

2012-08-07 17:06:48
青子守歌 @aokomoriuta

@ignis_fatuus 単にΣΔ^kなら無視するわけには行きませんが、普通はΣa_k Δ^kという形をしいるので、Δ=1が解を出すのに十分な精度なとき、a_kは十分に小さくなるはずです。ならない問題はconsistencyがないので論外で。

2012-08-07 17:09:47
いぐにすさん @ignis_fatuus

@aokomoriuta 微小量の2乗とかは少なくとも2桁以上は小さいという意味で無視しますけど、a_kがそれほど小さいことを仮定するのは受け入れがたいですね。特に風上1次とかだと。結果として十分な精度かもしれませんけど。

2012-08-07 17:17:27
青子守歌 @aokomoriuta

@ignis_fatuus (再)「何に比べて小さい」のかが重要なのです。1に比べて、じゃなく。あと、例えばテイラー展開ならa_kはk次微分係数に加えてn!が入ります。Δだけの問題ではないのです。

2012-08-07 17:27:25
いぐにすさん @ignis_fatuus

@aokomoriuta つまりΔ^2*a2=1/2ですが、これを無視して良いのかという話ですよ。

2012-08-07 17:29:33
青子守歌 @aokomoriuta

@ignis_fatuus 1/2がどっから出てきたか分かりませんが、a0およびa1の大きさがいくつなのかによりますよ、それは。Δの大きさは結局のところ、convergenceに関わる問題なので。

2012-08-07 17:33:12
いぐにすさん @ignis_fatuus

@aokomoriuta f(x+h)=f0+f1*h+h^2/2*f2+...としたとき、h=1で f(x+h)=f0+f1+1/2*f2...で、f(x+h)~f0~1というケースですね。このときf1をもとめるのに1/2*f2は無視できるかという意味です。

2012-08-07 17:41:47
青子守歌 @aokomoriuta

@ignis_fatuus 少なくとも、f0およびf1に比べて、f2の寄与率は半分という意味では小さいでしょう。それが十分かどうかは問題依存であって、h=1で十分な精度なのか、あるいは十分な精度とするにはfnはどのような条件を満たさねばならないか、具体的な話になります。

2012-08-07 17:44:34
いぐにすさん @ignis_fatuus

@aokomoriuta f1,f2の値は不明ですよ。f1と1/2*f2のどちらが大きいかなんて言えないと思います。

2012-08-07 17:49:51
青子守歌 @aokomoriuta

@ignis_fatuus だからあくまで「寄与率が」です。先から申し上げてる通り、h=1の時にf2精度で良いのかは問題依存であって、これ以上の抽象的な話はしにくいです。

2012-08-07 17:52:20
青子守歌 @aokomoriuta

実際、今の研究レベルでさえ、「精度が足りなかったので、差分スキームの精度をあげました!!」って話は聞くのだし。

2012-08-07 17:53:39
青子守歌 @aokomoriuta

fが二次関数なら2次精度で十分でしょう。三次関数も形状によっては。cosなんかもx=0で展開してh=1までなら2次精度で良い場合もあるのでは?

2012-08-07 17:55:23
青子守歌 @aokomoriuta

なんにせよ、現実世界においては「ある点近傍を近似する場合は2次精度ぐらいで十分」というのはただの経験則にしかすぎないから、そりゃ一般論として証明するのは難しいのでは。数学の分野で研究されてそうではありますが、少なくとも私は見た事ないです。あったら逆に教えてほしい。

2012-08-07 17:59:15
いぐにすさん @ignis_fatuus

@aokomoriuta 教科書的にはΔ<<1が前提なので、Δ>=1で解けたとしてもその解釈が難しいというお話。

2012-08-07 17:59:24
青子守歌 @aokomoriuta

@ignis_fatuus 実際のなんらかの物理現象の計算という場合は、普通Δ=d/Lとする、つまり実際の格子幅と計算領域の比とかで無次元化された値を用いますから、Δ<<1という仮定も変ではありませんよ。

2012-08-07 18:01:50
いぐにすさん @ignis_fatuus

@aokomoriuta Δ<<1は変じゃありません。変な気がする(正しいのかもしれない)のはΔ=1です

2012-08-07 18:02:48
青子守歌 @aokomoriuta

@ignis_fatuus ええと、だから、Δ=1と無次元化した値で十分かどうかは問題依存なんですって。10mの水槽の1cmの円柱まわりの計算をする時に、10mで無次元化するのか1cmで無次元化するのかで、Δの値なんてどうとでも変わります。

2012-08-07 18:04:50
残りを読む(10)

コメント

コメントがまだありません。感想を最初に伝えてみませんか?