next up previous contents
Next: 1.3 実験してみよう Up: 1. 次元波動方程式の初期値境界値問題の数値実験 Previous: 1.1 波動方程式

1.2 差分法方程式

計算手続きの基本的な考え方は熱方程式の場合と同様です。

「空間変数」$ x$ については、区間 $ [0,1]$$ N$ 等分します:

$\displaystyle h=1/N, \quad x_i=ih \quad \hbox{($i=0,1,2,\cdots,N$)}.
$

「時間変数」 $ t$ については、刻み幅 (間隔) を $ \tau>0$ としましょう。 $ t_n$

$\displaystyle t_n=n\tau \quad \hbox{($n=0,1,\cdots$)}
$

で定めます。

方程式 (1.1) に現れる二つの微分、 $ t$ に関する二階偏微分 $ \dsp\frac{\rd u}{\rd t}(x,t)$$ x$ に 関する二階偏微分 $ \dsp\frac{\rd^2 u}{\rd x^2}(x,t)$ の双方を、 ともに「$ 2$階中心差分商」で近似すると次の近似方程式が得られます:

$\displaystyle \frac{u(x,t+\tau)-2u(x,t)+u(x,t-\tau)}{\tau^2}=
\frac{u(x+h,t)-2u(x,t)+u(x-h,t)}{h^2}.
$

そこで格子点上 $ (x_i,t_n)$ での $ u$ の近似値 $ U_{i}^{n}$ を決定する方程式 としては次のものが考えられます。

$\displaystyle \frac{U_{i}^{n+1}-2U_{i}^{n}+U_{i}^{n-1}}{\tau^2}
=\frac{U_{i+1}^...
...{i}^{n}+U_{i-1}^{n}}{h^2}
\quad \hbox{($i=1,2,\cdots,N-1$; $n=1,2,3,\cdots$)},
$

これを変形すると

(1.6) $\displaystyle U_{i}^{n+1}= 2(1-\lambda^2)U_{i}^{n} +\lambda^2(U_{i-1}^{n}+U_{i+1}^{n}) -U_{i}^{n-1} \quad \hbox{($i=1,2,\cdots,N-1$; $n=1,2,3,\cdots$)}$

となります。ただし $ \lambda=\tau/h$ と置きました。

一方 (1.2) からは、ごく自然に

(1.7) $\displaystyle U_{i,0}=f(x_i) \quad \hbox{($i=0,1,2,\cdots,N$)}$

が得られます。 一方 (1.3) からは、 例えば (他にも色々なやり方が考えられますが)

(1.8) $\displaystyle U_{i}^{1}= (1-\lambda^2)f(x_i) +\frac{\lambda^2}{2}(f(x_{i-1})+f(x_{i+1})) +\tau g(x_i) \quad\hbox{($1\le i\le N$)}$

が得られます1.3。 (2.3.1) からは

(1.9) $\displaystyle U_{0}^{n}=U_{N}^{n}=0 \quad \hbox{($n=0,1,2,\cdots$)},$

また (2.25) からは

(1.10) $\displaystyle U_{0}^{n}=U_{1}^{n}, \quad U_{N}^{n}=U_{N-1}^{n} \quad \hbox{($n=0,1,2,\cdots$)}$

が考えられます。

数列 $ \{U_{i}^{n}\}$ に関する 方程式 (1.6), (1.7), (1.8), (2.5) は 二つの添字 $ i$, $ n$ を含んでいますが、 (1.6) を漸化式として、 時刻に関する方の添字 $ n$ の小さい方から順に計算していくことが出来ます。 熱方程式の場合は、二番目の添字のところには、 $ n$, $ n+1$ しか現れませんでしたが、 (1.6) では $ n-1$, $ n$, $ n+1$ と 3 つのものが現れています。 $ n+1$ での値を求めるために、一段前の $ n$ での値のみならず、 もう一段前の $ n-1$ での値が必要になっているわけです。 このことは、 もとの方程式が時刻 $ t$ に関して $ 2$ 階であることに対応しています。 そのため計算を出発させるためには、$ n=0$ での値だけでなく、 $ n=1$ での値も必要になりますが、 それは時刻に関する $ 1$ 階の微分を指定している 初期条件 (1.3) に 由来する (1.8) で与えられています。


熱方程式の場合と同様に、$ h$, $ \tau$ と性質の異なる刻み幅が 2 つあり ます。前回と同様に、安定に計算するためには両者を全く勝手なやり方で 0 に持っていくだけでは不十分です。どうすればいいか、とりあえず結論だけ述 べておくと「$ \lambda $ $ 0<\lambda\le1$ と選んで固定したまま、 $ h$, $ \tau\to 0$」で OK です。


next up previous contents
Next: 1.3 実験してみよう Up: 1. 次元波動方程式の初期値境界値問題の数値実験 Previous: 1.1 波動方程式
Masashi Katsurada
平成14年11月29日