1 subroutine bsplpp ( t, bcoef, n, k, scrtch, break, coef, l )
45 integer k,l,n, i,j,jp1,kmax,kmj,left,lsofar
47 double precision bcoef(n),break(l+1),coef(k,l),t(n+k), scrtch(k,k)
48 & ,biatx(kmax),diff,factor,sum
54 if (t(left+1) .eq. t(left))
go to 50
56 break(lsofar+1) = t(left+1)
58 coef(1,lsofar) = bcoef(left)
63 10 scrtch(i,1) = bcoef(left-k+i)
72 diff = t(left+i) - t(left+i - kmj)
73 if (diff .gt. 0.0d+00) scrtch(i,jp1) =
74 & (scrtch(i+1,j)-scrtch(i,j))/diff
95 call bsplvb ( t, 1, 1, t(left), left, biatx )
96 coef(k,lsofar) = scrtch(1,k)
98 call bsplvb ( t, jp1, 2, t(left), left, biatx )
102 28 sum = biatx(i)*scrtch(i,kmj) + sum
103 30 coef(kmj,lsofar) = sum
109 factor = factor*dble(k+1-i)
111 60 coef(i,j) = coef(i,j)*factor
subroutine bsplpp(t, bcoef, n, k, scrtch, break, coef, l)
subroutine bsplvb(t, jhigh, index, x, left, biatx)