XLPack ソルバー 2階常微分方程式
2 階常微分方程式の初期値問題の解を求めます.\[
\begin{align}
& d^2y_1/dt^2 = -y_1/r \\
& d^2y_2/dt^2 = -y_2/r \\
& (ただし, r = (y_1^2 + y_2^2)^{3/2}) \\
\end{align}
\] を解く例を示します. 初期値は, \(t_0 = 0\) において \(y_1 = 1, \space y_2 = 0, \space dy_1/dt = 0, \space dy_2/dt = \sqrt{3}\) とします.
従属変数が 2 つで方程式が 2 本の 2 階連立常微分方程式の例になります.
独立変数 (\(t\)) セル (この場合 B8) および従属変数 (\(y_i\)) セル (この場合 B9 ~ B10) にはプログラムがそれぞれの値を書き込みます. 微分式 (\(dy_i/dt\)) セル(この場合 B13 ~ B14) には \(t\) および \(y_i\) から \(d^2y_1/dt^2\) および \(d^2y_2/dt^2\) を求める数式を入力しておきます. この場合, B13 は =-B9*(B9^2+B10^2)^(-3/2), B14 は =-B10*(B9^2+B10^2)^(-3/2) とします.
初期値および出力セル範囲 (この場合 D8:H28) の各行の 1 列目に \(t\) を入力します. 1 行目には初期値 (この場合 \(t_0\), \(t_0\) における \(y_1\), \(y_2\), \(dy_1/dt\), \(dy_2/dt\) を入力しておきます.「計算開始」をクリックすると, 各行の \(t\) における \(y_1\), \(y_2\), \(dy_1/dt\), \(dy_2/dt\) を求め 2 列目以降に出力します. 指定した範囲内であっても \(t\) が空白の行に出会うと計算を終了します.
使用するプログラムは Dopn43, Dopn64, Dopn86 または Dopn1210 から選ぶことができます.
計算精度の標準値は \(10^{-8}\) です. 各プログラムの RTol および ATol にこれを設定します.
それぞれのセル範囲は必要な範囲よりも大きく指定することができ, その場合には左上から必要なだけの大きさの範囲を使います.

「保存/読込」についてはこちらを参照ください.
「ヘルプ」をクリックするとネット接続中であればこのページを表示します.
右上の「?」は正しく動作しません. 「ヘルプ」ボタンを使用してください.


