7 SUBROUTINE r8splaan (N, X, Y, B, C, D)
9 INTEGER,
PARAMETER :: R8=selected_real_kind(12,100)
11 real*8 x(n), y(n), b(n), c(n), d(n)
46 IF ( n .LT. 2 )
RETURN
47 IF ( n .LT. 3 )
GO TO 50
54 c(2) = (y(2) - y(1))/d(1)
57 b(i) = 2._r8*(d(i-1) + d(i))
58 c(i+1) = (y(i+1) - y(i))/d(i)
69 IF ( n .EQ. 3 )
GO TO 15
70 c(1) = (y(2)-y(1))/d(1)
71 c(n) = c(n-1)/(x(n)-x(n-2)) - c(n-2)/(x(n-1)-x(n-3))
72 c(n) = -c(n)*d(n-1)**2/(x(n)-x(n-3))
78 b(i) = b(i) - t*d(i-1)
79 c(i) = c(i) - t*c(i-1)
87 c(i) = (c(i) - d(i)*c(i+1))/b(i)
94 b(n) = (y(n) - y(nm1))/d(nm1) + d(nm1)*(c(nm1) + 2._r8*c(n))
96 b(i) = (y(i+1) - y(i))/d(i) - d(i)*(c(i+1) + 2._r8*c(i))
97 d(i) = (c(i+1) - c(i))/d(i)
104 50 b(1) = (y(2)-y(1))/(x(2)-x(1))