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

難問に突き当たったがそれはおそらくは「手抜き」にある。
そもそも陰解法でアタックすべき問題を陽解法に拘ったためである。陰解法は大規模な連立方程式を解いて未知量を確定させるのだから首尾一貫して解が確定する。
連立方程式が解けるかどうかとかそういった問題は抜きにしての話だ。
 
そのため計算時間が陽解法に比べて比較にならないほど膨大になるのは必至だ。それに加えてプログラムするのはかなり面倒でそこでおきえるミスも怖い。
まぁ、これが本当の手抜きなのだが、、、
それと陽解法は理論式をほぼそのまま記述したコードに出来るという可読性も捨てがたい。
 
悩ましい。
しかし、世の中を調べてみると陽解法で解くやり方も存在している。例えば

陽解法による新しい
線形分散波理論の津波数値計算法の提案
 鴫原良典、今村文彦

というのがある。実に巧みな方法だ。大雑把に言えば数値計算で発生する誤差(分散誤差)を本来計算する分散項の値に一致するように調整して計算するという方法だ。
つまり、問題の分散項は計算しなくてもよく陽解法で計算が出来るというものだ。
しかし、これは私のようなシロートには難しい、そもそもそんなに都合よく誤差をコントロールできるのか?(これは私がコードを書いての話、つまり巧みの技が無い)。
その他には

非線形分散波理論を用いた
実用的な津波計算モデル
 岩瀬浩之、見上敏文、後藤智明

がある。この論文では分散項は陽解法では安定して解を求めるのは困難としている点は納得。まったくそうなのだけども。。。
で、この論文でも,陰解法では私が書いたように計算量などが問題視されているわけだが問題を2段階に分けている点が効率化を図るという点で面白い。
分散項を除く式は陽解法で解き、残りを陰解法で解くというやり方だ。
やはり、陰解法は捨てられないわけだ。
 
でもでも、陰解法は使わないぞ