19 SUBROUTINE pspline (N, X, Y, B, C, D, WK)
21 REAL X(N), Y(N), B(N), C(N), D(N), WK(N)
64 INTEGER NM1, NM2, IB, I
75 >
' ?PSPLINE -- at least 4 pts required for periodic spline.')
85 d(nm1) = x(n) - x(nm1)
86 b(1) = 2.0*(d(1)+d(nm1))
87 c(1) = (y(n) - y(nm1))/d(nm1)
88 c(2) = (y(2) - y(1))/d(1)
93 b(i) = 2.*(d(i-1) + d(i))
94 c(i+1) = (y(i+1) - y(i))/d(i)
111 b(i) = b(i) - t*d(i-1)
112 c(i) = c(i) - t*c(i-1)
113 wk(i) = wk(i) - t*wk(i-1)
116 b(nm1) = b(nm1) - q*wk(i-1)
117 c(nm1) = c(nm1) - q*c(i-1)
122 wk(nm1) = wk(nm1) + d(nm2)
128 b(nm1) = b(nm1) - t*wk(nm2)
129 c(nm1) = c(nm1) - t*c(nm2)
133 c(nm1) = c(nm1)/b(nm1)
134 c(nm2) = (c(nm2) - wk(nm2)*c(nm1))/b(nm2)
138 c(i) = (c(i) - d(i)*c(i+1) - wk(i)*c(nm1))/b(i)
150 b(i) = (y(i+1) - y(i))/d(i) - d(i)*(c(i+1) + 2.*c(i))
151 d(i) = (c(i+1) - c(i))/d(i)