home *** CD-ROM | disk | FTP | other *** search
/ Frostbyte's 1980s DOS Shareware Collection / floppyshareware.zip / floppyshareware / DOOG / PCSSP1.ZIP / GLGRQUAD.ZIP / QL10.FOR < prev    next >
Text File  |  1985-11-29  |  2KB  |  60 lines

  1. C
  2. C     ..................................................................
  3. C
  4. C        SUBROUTINE QL10
  5. C
  6. C        PURPOSE
  7. C           TO COMPUTE INTEGRAL(EXP(-X)*FCT(X), SUMMED OVER X FROM 0
  8. C                               TO INFINITY).
  9. C
  10. C        USAGE
  11. C           CALL QL10(FCT,Y)
  12. C           PARAMETER FCT REQUIRES AN EXTERNAL STATEMENT
  13. C
  14. C        DESCRIPTION OF PARAMETERS
  15. C           FCT    - THE NAME OF AN EXTERNAL FUNCTION SUBPROGRAM USED.
  16. C           Y      - THE RESULTING INTEGRAL VALUE.
  17. C
  18. C        REMARKS
  19. C           NONE
  20. C
  21. C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
  22. C           THE EXTERNAL FUNCTION SUBPROGRAM FCT(X) MUST BE FURNISHED
  23. C           BY THE USER.
  24. C
  25. C        METHOD
  26. C           EVALUATION IS DONE BY MEANS OF 10-POINT GAUSSIAN-LAGUERRE
  27. C           QUADRATURE FORMULA, WHICH INTEGRATES EXACTLY WHENEVER
  28. C           FCT(X) IS A POLYNOMIAL UP TO DEGREE 19.
  29. C           FOR REFERENCE, SEE
  30. C           V.I.KRYLOV, APPROXIMATE CALCULATION OF INTEGRALS,
  31. C           MACMILLAN, NEW YORK/LONDON, 1962, PP.130-132 AND 347-352.
  32. C
  33. C     ..................................................................
  34. C
  35.       SUBROUTINE QL10(FCT,Y)
  36. C
  37. C
  38.       X=29.92070
  39.       Y=.9911827E-12*FCT(X)
  40.       X=21.99659
  41.       Y=Y+.1839565E-8*FCT(X)
  42.       X=16.27926
  43.       Y=Y+.4249314E-6*FCT(X)
  44.       X=11.84379
  45.       Y=Y+.2825923E-4*FCT(X)
  46.       X=8.330153
  47.       Y=Y+.7530084E-3*FCT(X)
  48.       X=5.552496
  49.       Y=Y+.009501517*FCT(X)
  50.       X=3.401434
  51.       Y=Y+.06208746*FCT(X)
  52.       X=1.808343
  53.       Y=Y+.2180683*FCT(X)
  54.       X=.7294545
  55.       Y=Y+.4011199*FCT(X)
  56.       X=.1377935
  57.       Y=Y+.3084411*FCT(X)
  58.       RETURN
  59.       END
  60.