• ベストアンサー

runge kutta gill 法

4次のrunge kutta gill法で、 d^2y/ dt^2 = d^3y/dt^3 + k + g の計算方法を教えて下さい。 k,g : 定数 FORTRAN77で、計算しようと思っているのですが、どのようなプログラムを作ればよいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

形式どおりに実行するのであれば、 Y=d^2y/ dt^2 と置くと Y' = Y - k - g ですから、初期値を(t1,Y1)として逐次ステップを Yn+1 = Yn + (k1 + 2 K2 + 2 K3 + k4)/6 k1 = h (Yn - k -g) k2 = h (Yn + k1/2 - k -g) k3 = h (Yn + k2/2 - k -g) k4 = h (Yn + k3 - k -g) で実行すればいいと思いますが、Yからyへの変換に2階の数値微分が必要です。これはきわめて解析精度を劣化させますからできれば先に2階積分した式 dy/dt = y - C1(k - g)t^2 + C2 t + C3 が得られた方がいいのですが。無理でしょうか。

参考URL:
http://mathworld.wolfram.com/Runge-KuttaMethod.html

その他の回答 (1)

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.2

dy/dt = y - C1(k - g)t^2 + C2 t + C3 は dy/dt = y + C1(k + g)t^2 + C2 t + C3 の誤りです。失礼しました。 なおC1,C2,C3は初期条件から求まる定数です。

関連するQ&A