C
C     ..................................................................
C
C        SUBROUTINE DQA16
C
C        PURPOSE
C           TO COMPUTE INTEGRAL(EXP(-X)*FCT(X)/SQRT(X), SUMMED OVER X
C                               FROM 0 TO INFINITY).
C
C        USAGE
C           CALL DQA16 (FCT,Y)
C           PARAMETER FCT REQUIRES AN EXTERNAL STATEMENT
C
C        DESCRIPTION OF PARAMETERS
C           FCT    - THE NAME OF AN EXTERNAL DOUBLE PRECISION FUNCTION
C                    SUBPROGRAM USED.
C           Y      - THE RESULTING DOUBLE PRECISION INTEGRAL VALUE.
C
C        REMARKS
C           NONE
C
C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
C           THE EXTERNAL DOUBLE PRECISION FUNCTION SUBPROGRAM FCT(X)
C           MUST BE FURNISHED BY THE USER.
C
C        METHOD
C           EVALUATION IS DONE BY MEANS OF 16-POINT GENERALIZED GAUSS-
C           LAGUERRE QUADRATURE FORMULA, WHICH INTEGRATES EXACTLY
C           WHENEVER FCT(X) IS A POLYNOMIAL UP TO DEGREE 31.
C           FOR REFERENCE, SEE
C           SHAO/CHEN/FRANK, TABLES OF ZEROS AND GAUSSIAN WEIGHTS OF
C           CERTAIN ASSOCIATED LAGUERRE POLYNOMIALS AND THE RELATED
C           GENERALIZED HERMITE POLYNOMIALS, IBM TECHNICAL REPORT
C           TR00.1100 (MARCH 1964), PP.15-16.
C
C     ..................................................................
C
      SUBROUTINE DQA16(FCT,Y)
C
C
      DOUBLE PRECISION X,Y,FCT
C
      X=.50777223877537080D2
      Y=.14621352854768325D-21*FCT(X)
      X=.41081666525491202D2
      Y=Y+.18463473073036584D-17*FCT(X)
      X=.33781970488226166D2
      Y=Y+.23946880341856973D-14*FCT(X)
      X=.27831438211328676D2
      Y=Y+.8430020422652895D-12*FCT(X)
      X=.22821300693525208D2
      Y=Y+.11866582926793277D-9*FCT(X)
      X=.18537743178606694D2
      Y=Y+.8197664329541793D-8*FCT(X)
      X=.14851431341801250D2
      Y=Y+.31483355850911881D-6*FCT(X)
      X=.11677033673975957D2
      Y=Y+.7301170259124752D-5*FCT(X)
      X=.8955001337723390D1
      Y=Y+.10833168123639965D-3*FCT(X)
      X=.66422151797414440D1
      Y=Y+.10725367310559441D-2*FCT(X)
      X=.47067267076675872D1
      Y=Y+.7309780653308856D-2*FCT(X)
      X=.31246010507021443D1
      Y=Y+.35106857663146861D-1*FCT(X)
      X=.18779315076960743D1
      Y=Y+.12091626191182523D0*FCT(X)
      X=.9535531553908655D0
      Y=Y+.30253946815328497D0*FCT(X)
      X=.34220015601094768D0
      Y=Y+.55491628460505980D0*FCT(X)
      X=.37962914575313455D-1
      Y=Y+.7504767051856048D0*FCT(X)
      RETURN
      END
