next up previous
Next: 2 境界値問題としてのLane-Emden 方程式 Up: 8 常微分方程式の数値解法:境界値問題 Previous: 8 常微分方程式の数値解法:境界値問題

Subsections


1 シューティング法

常微分方程式
\begin{displaymath}
{{dy_i}\over{dx}} = f_i[x,y_j(x)]
\end{displaymath} (1)

$i, j = 1, 2, 3, ..., 2n$ において、$x=x_0$
\begin{displaymath}
g_k[y_j(x_0), x_0] = 0
\end{displaymath} (2)

(但し、$k=1, ..., n$)、且つ$x=x_1$
\begin{displaymath}
g_l[y_j(x_1), x_1] = 0
\end{displaymath} (3)

(但し、$l=n+1, ...,2n$)を満たすよう解を求める場合を考えよう。 境界値問題という訳である。 例えば、初期値問題の例に挙げたのと同じ微分方程式
\begin{displaymath}
{{d^2y}\over{dx^2}}+y=0
\end{displaymath} (4)

を、$x=0$$y=1$, $x=\pi/2$$y=0$の下で解く境界値問題として考えよう。

与えられた境界から、もう一方の境界に向かって初期値問題として積分する事を考える。 決められている条件は、$x=0$$y=1$だけだから、初期値問題として積分を進めるた めにはもう一つ条件を課す必要がある。そこで、$x=0$での$dy/dx$にある値を与えて 積分していくことにする。いろいろと、このパラメーターを変えてみて、もう一方の 境界での条件$x=\pi/2$$y=0$を満たすようなパラメーターを捜せば良い。 シューティング法という。 場合によっては、境界条件が特異になっていて、シューティング法ではなかなか当た りが見つからない事がある。この様な場合は、それぞれの境界から、初期値問題とし て他方の境界に向かって積分していき、ある適当な点(フィッティングポイント)で、 双方の解が接続するようにパラメーターを決める。これをフィッティング法と呼ぶ。

1 問題


\begin{displaymath}
{{d^2y}\over{dx^2}}+y=0
\end{displaymath} (5)

を、$x=0$$y=1$, $x=\pi/2$$y=1/4$という境界条件の境界値問題として、 シューティング法により、数値的に解け。

$z\equiv dy/dx(x=0)$ $Y\equiv y(x=\pi/2)$とすると、 この問題は$Y(z)=1/4$となる$z$を求める ことと同じである。 手順としては、 先ず、適当に選んだ$z_{\rm t}$に対する$Y$を 求める。 次に、$z$の値を$z_{\rm t}$から $z_{\rm t}+\delta z$に変えて、 $Y$の変化量を求める。 これから

\begin{displaymath}
dY/dz =
[Y(z_{\rm t}+\delta z)-Y(z_{\rm t})]/\delta z
\end{displaymath} (6)

を数値的に求める。 今、$z_{\rm t}$の値が、真の解$z_0$から $\Delta z$ずれているとすると、1次の精度で、
\begin{displaymath}
Y(z_{\rm t}) +
(dY/dz)\Delta z =1/4
\end{displaymath} (7)

そこで、
\begin{displaymath}
z=z_{\rm t}+\Delta z=z_{\rm t}+\{1/4- Y(z_{\rm t})\}/(dY/dz)
\end{displaymath} (8)

を改めて$z_{\rm t}$として、再び$dY/dz$を計算し、 $\Delta z$が充分小さくなるまで、逐次計算を繰り返せば良い。



Jun Makino
平成15年6月5日