ソリトン分裂に関して(5)
どうせシロートの作るプログラムだ。分散項の影響精度なんてそんなに必要ない。
と思えば首尾一貫して陽解法でやれるはずだ。
思い出そう。それは時間微分項が無い場合(定常の場合)はうまく解けている。
あ、もちろん精度は別の話。数値発散しないで計算できたという意味だ。
例えば0.5∂M/∂t とか。
さて、計算がうまく行ったとする。現象再現性としてはどうなのだろう?
その他の分散項も水深が掛け算されているため格子間隔が小さいときに水深が深いと同程度の不安定性が考えられる。
結局、方程式は
とするときオリジナルは
だが、それを以下のように修正する。修正係数α、βを導入すると
∂’M/∂’tは近似の∂M/∂tの値。α、βは1以下の正値とする。
これで式からは自己参照するような時間微分項が消えうせているので完全に陽的に解ける事になる。ここでα、βが同じ値だとするとこれは単に時間ステップを小さくするのと等価となる事がわかる。
しかし、これは数値発散しないように値をカットして押さえ込んだだけだしα、βの値をどこからか沸いて出来たような値にしなければならない。
とりあえずの処置だ。