C       TEST OF DQAGI
C          COMPUTE INTEGRAL OF EXP(-X)*COS(X*X)**2 ON [0,INFINITY)
C               RESULT IS 0.70260...
C
      INTEGER LIMIT,LENW
      PARAMETER(LIMIT=100,LENW=LIMIT*4)
      DOUBLE PRECISION BOUND,EPSABS,EPSREL,RESULT,ABSERR,WORK(LENW)
      INTEGER INF,NEVAL,IER,LAST,IWORK(LIMIT)
      EXTERNAL F
C
C       REMEMBER TO SET UNDERFLOWS TO ZERO--COMPILER DEPENDENT---
CCCCCCCCCCCCCCCC(FOR LAHEY F77L COMPILER)      CALL UNDER0(.TRUE.)
      BOUND = 0.0D0
      INF = 1
      EPSABS = 0.0D0
      EPSREL = 1.D-5
      CALL DQAGI(F,BOUND,INF,EPSABS,EPSREL,RESULT,ABSERR,NEVAL,
     *    IER,LIMIT,LENW,LAST,IWORK,WORK)
      WRITE(*,*)'DQAGI RESULT, ABSERR, NEVAL, IER: '
      WRITE(*,'(2X,2D20.10,I6,I5)') RESULT, ABSERR, NEVAL, IER
C
      WRITE(*,*)
      WRITE(*,*)'REFERENCE RESULTS FROM IBM PC/AT'
      WRITE(*,*)'   BE SURE THAT UNDERFLOWS ARE SET TO ZERO...'
      WRITE(*,*) 'DQAGI RESULT, ABSERR, NEVAL, IER: '
      WRITE(*,*)'     0.7026028726E+00    0.6401518223E-05  1005    0'
C
      STOP
      END
C
      DOUBLE PRECISION FUNCTION F(X)
        DOUBLE PRECISION X,EXP,COS
        F = EXP(-X)*COS(X*X)**2
        RETURN
      END
