- 682 名前:デフォルトの名無しさん [2006/07/18(火) 05:18:07 ]
- subroutine rk4(y, dydx, x, h, yout, derive)
implicit none integer i double precision h, x, dydx(2), y(2), yout(2) external derive double precision h6, hh, xh, dym(2), dyt(2), yt(2) hh = h*0.5d0 h6 = h/6d0 xh = x + hh do i = 1, 2 yt(i) = y(i) + hh*dydx(i) call derive(xh, yt, dyt) yt(i) = y(i) + hh*dyt(i) call derive(xh, yt, dym) yt(i) = y(i) + h*dym(i) dym(i) = dyt(i) + dym(i) call derive(x+h, yt, dyt) yout(i) = y(i) + h6*(dydx(i) + dyt(i) + 2.0d0*dym(i)) end do return end
|

|