1 FUNCTION deriv(xx,yy,n)
9 REAL(rprec) :: xx(n),yy(n)
10 REAL(rprec),
DIMENSION(n) :: x, y, dydx, x01, x02, x12
11 REAL(rprec) :: deriv(n)
15 INTEGER,
PARAMETER :: rprec = selected_real_kind(12,100)
18 REAL(rprec),
DIMENSION(n) :: x1
19 REAL(rprec) :: shiftx(n)
26 dydx =
shiftx(y,n,1) * (x12 / (x01*x02)) +
27 . y * (1./x12 - 1./x01) -
28 .
shiftx(y,n,-1) * (x01 / (x02 * x12))
29 dydx(1) = y(1) * (x01(2)+x02(2))/(x01(2)*x02(2)) -
30 . y(2) * x02(2)/(x01(2)*x12(2)) +
31 . y((3)) * x01(2)/(x02(2)*x12(2))
33 dydx(n) = -y(n-2) * x12(n2)/(x01(n2)*x02(n2)) +
34 . y(n-1) * x02(n2)/(x01(n2)*x12(n2)) -
35 . y(n) * (x02(n2)+x12(n2)) / (x02(n2)*x12(n2))