さて、まず、なぜ振動が起きるかということだが、これは原理的には差分化さ れた方程式の固有値を求めればわかる。
つまり、 を時刻 での数値解をベク トルとして書いたものだとすると、差分近似は、
という形に書ける。ここで A は次元正方行列で、その各要素は差分近似の形から決 まる。この場合には、対角要素とその両側一列以外の全ての要素が 0 である3 重対角行列といわれる形をしている。要素の値は
ここで、 である。
この行列は実対称行列なので固有値分解ができて、適当なユニタリ行列Uを持っ てきて
と書ける。ここで は固有値行列、つまり対角要素が固有値でそれ以 外が 0の行列である。
このように分解できるので、 とすれば最初の差分近似式は
つまり、
という n-1 個の独立な方程式になって、解も自明に求まる。いうまでもな いが、 U の各列は A の固有ベクトルになっている。つまり、Uの i 行 目を と書くと、
である。
不安定性が起きないための条件は、全ての固有値 の絶対値が 1 を超えないということである。
さて、そういうわけで、固有値がどうなっているか調べてみよう。 式 (9) をもともとの差分近似に入れてちょっと変形する と、
となる。 x がいつのまにか u に戻っているが深い意味はない。ここで である。さらに、
とおいてもうちょっと変形すると、結局
となる。
断るまでもないと思うが、これは元の偏微分を変数分離して空間方向の関数に ついての常微分方程式を導くのとほとんど同じ操作になっている。これを についての差分方程式と見て解を求めることを考える。
線形差分方程式なので、解は の形である。これを代入すると
解は
となる。
真面目にやるには境界条件を満たす固有ベクトルをもとめないといけないが、 面倒なので無限遠境界の場合を考える。この時、 p が実数のものはどち らかで無限大に発散するのでよろしくないので、複素数の場合を考える。この 時は |p| = 1 になっているので無限遠でも発散しない。
なお、有限の固定境界の場合も結局境界条件を満たすような解を作るためには p が複素数でないといけないことがすぐにわかる。このため、 だけを考えればよい。
このとき、式(11)は
と書き直せる。 なので、 なるある に ついて であるためには、結局
を満たせば良く、任意の についてなり立つためには
つまり
であればいいことになる。
上でやったことは、結局空間方向をフーリエ級数展開して、各空間波長に対す る時間発展が安定である(減衰していく)ことを要求しているのと同じである。 このようなやり方を von Neumann の方法による安定性解析という。
上の議論からわかるように、不安定条件に関係する の値は実際には だけで、それ以外の からはもっと緩い条件しかでな い。 は p=-1 に対応するので、これは結局 と で値が逆転するようなパターンである。そのようなパターン(モー ド)が 1 ステップ計算するとどうなるかをもう一度もとの差分式に戻って書き直してみ ると、結局
となる。括弧内の絶対値が 1 より大きいと、パターンがどんどん成長していっ てめちゃくちゃな答になるわけである。括弧内の絶対値が 1 より小さいため には、
であればよく、前節の結果と同じである。このように、偏微分方程式の場合に は大抵もっとも波長の短いモードが減衰できるかどうかで安定性が決まる。