ソリトン分裂に関して(5)

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