      PROGRAM NTEST 
C SICIEI TEST PROGRAM
C NO INPUT REQUIRED 
C
C Test program by Glen Nielson, April 1989. The test data is taken from
C I. A. Stegun and R. Zucker, Automatic Computing methods for Special
C Functions. Part III. The Sine, Cosine, Exponential Integrals, and 
C Related Functions, J Res NBS, Vol 80B, No 2, April-June 1976. 
C
      implicit double precision (a-h,o-z)
      dimension TAB(6,6)
      DEVMAX(VAL1,VAL2,DEV)=MAX(DEV,ABS((VAL1-VAL2)/VAL1))
      DATA TAB/.1D-1,.99999444446111108277D-02
     1 ,-.40279795209823920722D+1,-.40179294654266693868D+1 
     1 ,.10000055555722222505D-1,-.40279295209823916092D+1
     1 ,.5D-1,.49993056076366745213D-1
     1 ,-.24191415435519082432D+1,-.23678845985793745242D+1 
     1 ,.50006944965299922650D-1,-.24178915435446744469D+1
     1 ,.1D0,.99944461108276950161D-1
     1 ,-.17278683866572966390D+1,-.16228128139692766750D+1 
     1 ,.10005557222505699555D0,-.17228683861943336705D+1
     1 ,.5D0,.49310741804306668916D0
     1 ,-.17778407880661290134D+0,.45421990486317357992D0
     1 ,.50699674981966719583D0,-.52776844956493615913D-1
     1 ,.1D+1,.94608307036718301494D0
     1 ,.33740392290096813466D0,.18951178163559367555D+1
     1 ,.10572508753757285145D+1,.83786694098020824089D0
     1 ,.1D+2,.16583475942188740493D+1
     1 ,-.45456433004455372635D-1,.24922289762418777591D+4
     1 ,.12461144901994233444D+4,.12461144860424544147D+4
     1 /
      IC=4
      EIDEV=0.
      SIDEV=0.
      CIDEV=0.
      SHIDEV=0.
      CHIDEV=0.
      DO 1 i=1,6
      X=TAB(1,I)
      CALL SICIEI(IC,X,SI,CI,CII,EI,EXNEI,SHI,CHI,
     1  CHII,IERR)
      SIDEV=DEVMAX(SI,TAB(2,I),SIDEV)
      CIDEV=DEVMAX(CI,TAB(3,I),CIDEV)
      EIDEV=DEVMAX(EI,TAB(4,I),EIDEV)
      SHIDEV=DEVMAX(SHI,TAB(5,I),SHIDEV)
    1 CHIDEV=DEVMAX(CHI,TAB(6,I),CHIDEV)
      WRITE(6,600) 'sidev',sidev
      WRITE(6,600) 'cidev',cidev
      WRITE(6,600) 'eidev',eidev
      WRITE(6,600) 'shidev',shidev
      WRITE(6,600) 'chidev',chidev
  600 format(1x,a,' =',d20.9)
      stop
      end
