II 差分法で近似する
(1) 関数 f(x) に対して,lim を用いて導関数 f'(x) を与える式を思い出してください.
(答えはここをクリックするとわかります)
(2) 微分方程式 x''(t) + x(t) =0 から差分方程式を作る方法
上の (1) で示された f(x) を x(t), x'(t) に読み換えて
x'(t)=(x(t+h)-x(t))/h , x''(t)=(x'(t+h)-x'(t))/h
を得る.これを変形して
x(t+h)=x(t)+hx'(t)
x'(t+h)=x'(t)+hx''(t)
とする.また,微分方程式 x''(t)+x(t)=0 より x''(t)=-x(t) だから
x(t+h)=x(t)+hx'(t)
x'(t+h)=x'(t)-hx(t)
なる関係式が成立する.
この2つの関係式を行列を
用いて表したものが差分方程式
です.
(ここをクリックすると,差分方程式が出ます)
この差分方程式は,
2つの値の組 (x(t),x'(t)) から,
h だけ先にある値の組 (x(t+h), x'(t+h)) が
どのような規則で決まるかを指し示している.
(具体的には行列との積を計算する)
(3) n を大きな自然数とし,h=1/n と考えれば,この差分方程式は,初期値
(x(0), x'(0))=(1,0) から順に
(x(1/n), x'(1/n))
(x(2/n), x'(2/n))
(x(3/n), x'(3/n))
(x(4/n), x'(4/n))
....
(x(k/n), x'(k/n))
と決めるルールを与える.
(x(k/n), x'(k/n))を計算する手順は
(2) の差分方程式より,
数学的には以下のように表せます.
(自分で考えてみよう)
(ここをクリックすると,その答えが出ます)
このルールを利用すれば,大きな自然数 n に対して,
時間を t=0/n, 1/n, 2/n, 3/n, ...
のように表して,この値を x(t)に
代入して
x(0/n), x(1/n), x(2/n), x(3/n), ...
の位置を順に観察していくことで重りの動きを知ることができる.
この状況を時間との組
(k/n, x(k/n)) (k=0,1,2, ... )
として観察する.
なんと!
n を大きくすると、
三角関数 y=cos x のグラフに沿って動くことが観察できる.
この動きを観察するために MathReader を起動し,実行ファイル
lesson2.nb
を開きます.
(file メニューで open をクリックして
lesson2
を選択).
(注意) 実行ファイル
lesson2.nb
が C ドライブのフォルダー MathReader に保存していない場合は
ここをクリックして手に入れてください.
微分方程式を解析的に解くとは,
n を限りなく大きくした状況を考えて,
このような関数 cos x を求めることです.
次のページに進む
前のページに戻る