DCL:MATH2:ODELIB : 常微分方程式 (ルンゲクッタ):サブルーチンの説明
ODRKG (ODRKGR, ODRKGS) または, ODRK4 (ODRK4R, ODRK4S) により 2ステップの積分を行ない, 精度のチェックをして適当なDTを求める. ODRKGSとODRK4Sは与えられたDTで2ステップの積分をした後, 次のステップのためのDTを求めてリターンするが, ODRKGRとODRK4Rは要求精度が満たされないときDTを 小さくして再計算を行う.
CALL ODRKGR(N,FCN,T,DT,EPSL,X,WORK)
CALL ODRKGS(N,FCN,T,DT,EPSL,X,WORK)
CALL ODRK4R(N,FCN,T,DT,EPSL,X,WORK)
CALL ODRK4S(N,FCN,T,DT,EPSL,X,WORK)
N (I) 被積分変数(方程式)の数. (i) FCN 手続き名 DXを計算するサブルーチン名. T (R) 独立変数tの値. 2ステップ分の積分幅を加えて 出力される. (i/o) DT (R) 積分ステップ幅. 適当な値に変更されて出力される. (i/o) EPSL (R) 要求精度. (i) X R(N) 被積分変数のt=T における値を入力し, t=T+2×DT における値 を出力する. WORK R(N,M) 作業変数. M=7 ( ODRK4R), M=5 ( ODRK4S, ODRKGR), M=3 ( ODRKGS).
なお ODRKGS, ODRK4S では, DT を決める際に, 小さめの安全率を 使っているので, 方程式の性質が時間的に緩やかに変わる場合には 有効である.
SUBROUTINE FCN(N,T,X,DX)