1 subroutine cubsplb ( tau, c, n, ibcbeg, ibcend )
33 integer ibcbeg,ibcend,n, i,j,l,m
35 real c(4,n),tau(n), divdf1,divdf3,dtau,g
45 c(3,m) = tau(m) - tau(m-1)
46 10 c(4,m) = (c(1,m) - c(1,m-1))/c(3,m)
49 if (ibcbeg-1) 11,15,16
50 11
if (n .gt. 2)
go to 12
58 c(3,1) = c(3,2) + c(3,3)
59 c(2,1) =((c(3,2)+2.*c(3,1))*c(4,2)*c(3,3)+
60 > c(3,2)**2*c(4,3))/c(3,1)
69 c(2,1) = 3.*c(4,2) - c(3,2)/2.*c(2,1)
70 18
if(n .eq. 2)
go to 25
75 g = -c(3,m+1)/c(4,m-1)
76 c(2,m) = g*c(2,m-1) + 3.*(c(3,m)*c(4,m+1)+c(3,m+1)*c(4,m))
77 20 c(4,m) = g*c(3,m-1) + 2.*(c(3,m) + c(3,m+1))
83 if (ibcend-1) 21,30,24
84 21
if (n .eq. 3 .and. ibcbeg .eq. 0)
go to 22
88 c(2,n) = ((c(3,n)+2.*g)*c(4,n)*c(3,n-1)
89 * + c(3,n)**2*(c(1,n-1)-c(1,n-2))/c(3,n-1))/g
99 24 c(2,n) = 3.*c(4,n) + c(3,n)/2.*c(2,n)
102 25
if (ibcend-1) 26,30,24
103 26
if (ibcbeg .gt. 0)
go to 22
109 29 c(4,n) = g*c(3,n-1) + c(4,n)
110 c(2,n) = (g*c(2,n-1) + c(2,n))/c(4,n)
113 40 c(2,j) = (c(2,j) - c(3,j)*c(2,j+1))/c(4,j)
115 if (j .gt. 0)
go to 40
120 divdf1 = (c(1,i) - c(1,i-1))/dtau
121 divdf3 = c(2,i-1) + c(2,i) - 2.*divdf1
122 c(3,i-1) = 2.*(divdf1 - c(2,i-1) - divdf3)/dtau
123 50 c(4,i-1) = (divdf3/dtau)*(6./dtau)