27 INTEGER,
INTENT(IN) :: iflag
28 CHARACTER,
INTENT(IN) :: message*(*)
30 IF ( iflag .EQ. -1 )
THEN
37 WRITE(*,*)
'CPIUC: *** Abnormal Termination ***'
39 WRITE(*,*)
'Press return to close the window'
44 ELSE IF ( iflag .EQ. 1 )
THEN
50 WRITE(*,*)
'CPIUC: *** The program has finished sucessfully ***'
52 WRITE(*,*)
'Press return to close the window'
84 REAL*8,
INTENT(OUT) :: getfx
86 REAL*8,
DIMENSION(:,:),
INTENT(IN) :: f
87 REAL*8,
INTENT(IN) :: x
91 REAL*8 :: u , x0 , x1 , f0 , f1 , f2 , f_1
99 IF ( x .LE. f(1,1) )
THEN
110 IF ( x .GE. f(1,n) )
THEN
122 IF ( ( x .GT. f(1,1) ) .AND. ( x .LE. f(1,2) ) )
THEN
130 getfx = f0 + u*(f1-f0)+ 0.5d0*u*(u-1)*(f2-2.d0*f1+f0)
151 IF ( ( x .GT. x0 ) .AND. ( x .LE. x1 ) )
THEN
163 getfx = f0 + 0.5d0*u*(f1-f_1)+ 0.5d0*u*u*(f1-2.d0*f0+f_1)
193 INTEGER,
INTENT(IN) :: n
194 REAL*8,
INTENT(IN) :: f(2,n)
195 REAL*8,
INTENT(OUT) :: df(2,n)
215 df(2,1) = (-f(2,3)+4.d0*f(2,2)-3.0d0*f(2,1))/(f(1,3)-f(1,1))
220 df(2,n) = (3.d0*f(2,n)-4.d0*f(2,n-1)+f(2,n-2))/(f(1,n)-f(1,n-2))
228 df(2,i) = (f(2,i+1)-f(2,i-1))/(f(1,i+1)-f(1,i-1))