15 integer i, ii, ks, ke, ip, i1, i2, k, j
16 real*8 a2, a1, x1, x2, x3, h, hy, dy1, dy2, y1, y2, hh, h1, h2
19 if (n .lt. 2 .or. nc .lt. n-1 )
then 20 write(0,*)
' n=', n,
' nc=',nc
21 write(0,*) .lt..or..lt.
" if (n 2 nc n-1 ) wrong" 22 call cerrormsg(
'input is wrong for kcslpCoef',0)
26 if ( x(i) .eq. x(i+1))
then 28 *
'x must be ascending: kcsplCoef',1)
29 write(msg,*)
' i=',i,
' x(i)=',x(i),
' x(i+1)=',x(i+1)
53 if (j .ne. ip .and. j .ne. k)
then 60 d(i) = d(i) + a1 * y(k) / x3
64 d(i) = d(i) + y(ip) * a2
69 ec(i2) = 6.0
d0 * (hy / h - d(i)) / h
70 if (i .eq. 2) ec(i2) = - ec(i2)
81 coef(i,2) = 1.0
d0 - coef(i,1)
82 coef(i,3) = 6.0
d0 * (y2 / h2 - y1 / h1) / hh
88 coef(1,1) = - ec(1) * 0.5
d0 89 coef(1,2) = ec(2) * 0.5
d0 92 pinv = 2.0
d0 + coef(k,2) * coef(k-1,1)
93 coef(k,1) = - coef(k,1) / pinv
95 * (coef(k,3) - coef(k,2) * coef(k-1,2)) / pinv
98 dy1 = (ec(4) - ec(3) * coef(n-1,2)) /
99 * (2.0
d0 + ec(3) * coef(n-1,1))
102 dy2 = coef(k,1) * dy1 + coef(k,2)
104 coef(k,3) = (dy1 - dy2) / (6.0
d0 * h)
105 coef(k,2) = 0.5
d0 * dy2
106 coef(k,1) = (y(k+1) - y(k)) / h -
107 * (coef(k,2) + coef(k,3) * h) * h
subroutine cerrormsg(msg, needrtn)
subroutine kcsplcoef(x, y, n, coef, nc)
block data cblkEvhnp ! currently usable models data RegMdls ad *special data *Cekaon d0