C
C     ..................................................................
C
C        SUBROUTINE QG10
C
C        PURPOSE
C           TO COMPUTE INTEGRAL(FCT(X), SUMMED OVER X FROM XL TO XU)
C
C        USAGE
C           CALL QG10(XL,XU,FCT,Y)
C           PARAMETER FCT REQUIRES AN EXTERNAL STATEMENT
C
C        DESCRIPTION OF PARAMETERS
C           XL     - THE LOWER BOUND OF THE INTERVAL.
C           XU     - THE UPPER BOUND OF THE INTERVAL.
C           FCT    - THE NAME OF AN EXTERNAL FUNCTION SUBPROGRAM USED.
C           Y      - THE RESULTING INTEGRAL VALUE.
C
C        REMARKS
C           NONE
C
C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
C           THE EXTERNAL FUNCTION SUBPROGRAM FCT(X) MUST BE FURNISHED
C           BY THE USER.
C
C        METHOD
C           EVALUATION IS DONE BY MEANS OF 10-POINT GAUSS QUADRATURE
C           FORMULA, WHICH INTEGRATES POLYNOMIALS UP TO DEGREE 19
C           EXACTLY.
C           FOR REFERENCE, SEE
C           V.I.KRYLOV, APPROXIMATE CALCULATION OF INTEGRALS,
C           MACMILLAN, NEW YORK/LONDON, 1962, PP.100-111 AND 337-338.
C
C     ..................................................................
C
      SUBROUTINE QG10(XL,XU,FCT,Y)
C
C
      A=.5*(XU+XL)
      B=XU-XL
      C=.4869533*B
      Y=.03333567*(FCT(A+C)+FCT(A-C))
      C=.4325317*B
      Y=Y+.07472567*(FCT(A+C)+FCT(A-C))
      C=.3397048*B
      Y=Y+.1095432*(FCT(A+C)+FCT(A-C))
      C=.2166977*B
      Y=Y+.1346334*(FCT(A+C)+FCT(A-C))
      C=.07443717*B
      Y=B*(Y+.1477621*(FCT(A+C)+FCT(A-C)))
      RETURN
      END
