Google
 

Trailing-Edge - PDP-10 Archives - decuslib20-02 - decus/20-0026/dqa32.ssp
There are 2 other files named dqa32.ssp in the archive. Click here to see a list.
C                                                                       DA32  10
C     ..................................................................DA32  20
C                                                                       DA32  30
C        SUBROUTINE DQA32                                               DA32  40
C                                                                       DA32  50
C        PURPOSE                                                        DA32  60
C           TO COMPUTE INTEGRAL(EXP(-X)*FCT(X)/SQRT(X), SUMMED OVER X   DA32  70
C                               FROM 0 TO INFINITY).                    DA32  80
C                                                                       DA32  90
C        USAGE                                                          DA32 100
C           CALL DQA32 (FCT,Y)                                          DA32 110
C           PARAMETER FCT REQUIRES AN EXTERNAL STATEMENT                DA32 120
C                                                                       DA32 130
C        DESCRIPTION OF PARAMETERS                                      DA32 140
C           FCT    - THE NAME OF AN EXTERNAL DOUBLE PRECISION FUNCTION  DA32 150
C                    SUBPROGRAM USED.                                   DA32 160
C           Y      - THE RESULTING DOUBLE PRECISION INTEGRAL VALUE.     DA32 170
C                                                                       DA32 180
C        REMARKS                                                        DA32 190
C           NONE                                                        DA32 200
C                                                                       DA32 210
C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED                  DA32 220
C           THE EXTERNAL DOUBLE PRECISION FUNCTION SUBPROGRAM FCT(X)    DA32 230
C           MUST BE FURNISHED BY THE USER.                              DA32 240
C                                                                       DA32 250
C        METHOD                                                         DA32 260
C           EVALUATION IS DONE BY MEANS OF 32-POINT GENERALIZED GAUSS-  DA32 270
C           LAGUERRE QUADRATURE FORMULA, WHICH INTEGRATES EXACTLY       DA32 280
C           WHENEVER FCT(X) IS A POLYNOMIAL UP TO DEGREE 63.            DA32 290
C           FOR REFERENCE, SEE                                          DA32 300
C           SHAO/CHEN/FRANK, TABLES OF ZEROS AND GAUSSIAN WEIGHTS OF    DA32 310
C           CERTAIN ASSOCIATED LAGUERRE POLYNOMIALS AND THE RELATED     DA32 320
C           GENERALIZED HERMITE POLYNOMIALS, IBM TECHNICAL REPORT       DA32 330
C           TR00.1100 (MARCH 1964), PP.15-16.                           DA32 340
C                                                                       DA32 350
C     ..................................................................DA32 360
C                                                                       DA32 370
      SUBROUTINE DQA32(FCT,Y)                                           DA32 380
C                                                                       DA32 390
C                                                                       DA32 400
      DOUBLE PRECISION X,Y,FCT                                          DA32 410
C                                                                       DA32 420
      X=.11079926894707576D3                                            DA32 430
      Y=.11071413071713886D-27*FCT(X)                                   DA32 440
      X=.9791671642606276D2                                             DA32 450
      Y=Y+.33594959802163184D-22*FCT(X)                                 DA32 460
      X=.8785611994313352D22                                            DA32 470
      Y=Y+.68422760225114810D-18*FCT(X)                                 DA32 480
      X=.7933908652882320D2                                             DA32 490
      Y=Y+.31147812492595276D-14*FCT(X)                                 DA32 500
      X=.71868499359551422D2                                            DA32 510
      Y=Y+.50993217982259985D-11*FCT(X)                                 DA32 520
      X=.65184426376135782D2                                            DA32 530
      Y=Y+.38582071909299337D-8*FCT(X)                                  DA32 540
      X=.59129027934391951D2                                            DA32 550
      Y=Y+.15723595577851821D-5*FCT(X)                                  DA32 560
      X=.53597231826148512D2                                            DA32 570
      Y=Y+.38234137666012857D-3*FCT(X)                                  DA32 580
      X=.48514583867416048D2                                            DA32 590
      Y=Y+.59657255685597023D-1*FCT(X)                                  DA32 600
      X=.43825886369903902D2                                            DA32 610
      Y=Y+.63045091330075628D1*FCT(X)                                   DA32 620
      X=.39488797123368127D2                                            DA32 630
      Y=Y+.47037694213516382D3*FCT(X)                                   DA32 640
      X=.35469961396173283D2                                            DA32 650
      Y=Y+.25601867826448761D5*FCT(X)                                   DA32 660
      X=.31742543790616606D2                                            DA32 670
      Y=Y+.10437247453181695D7*FCT(X)                                   DA32 680
      X=.28284583194970531D2                                            DA32 690
      Y=Y+.32566814614194407D8*FCT(X)                                   DA32 700
      X=.25077856544198053D2                                            DA32 710
      Y=Y+.7918355533895448D9*FCT(X)                                    DA32 720
      X=.22107070382206007D2                                            DA32 730
      Y=Y+.15230434500290903D11*FCT(X)                                  DA32 740
      X=.19359271087268714D2                                            DA32 750
      Y=Y+.23472334846430987D12*FCT(X)                                  DA32 760
      X=.16823405362953694D2                                            DA32 770
      Y=Y+.29302506329522187D13*FCT(X)                                  DA32 780
      X=.14489986690780274D2                                            DA32 790
      Y=Y+.29910658734544941D14*FCT(X)                                  DA32 800
      X=.12350838217714770D2                                            DA32 810
      Y=Y+.25166805020623692D15*FCT(X)                                  DA32 820
      X=.10398891905552624D2                                            DA32 830
      Y=Y+.17576998461700718D16*FCT(X)                                  DA32 840
      X=.8628029857405929D1                                             DA32 850
      Y=Y+.10251858271572549D17*FCT(X)                                  DA32 860
      X=.70329577982838936D1                                            DA32 870
      Y=Y+.50196739702612497D17*FCT(X)                                  DA32 880
      X=.56091034574961513D1                                            DA32 890
      Y=Y+.20726581990151553D18*FCT(X)                                  DA32 900
      X=.43525345293301410D1                                            DA32 910
      Y=Y+.7245173957068918D18*FCT(X)                                   DA32 920
      X=.32598922564569419D1                                            DA32 930
      Y=Y+.21512081019758274D19*FCT(X)                                  DA32 940
      X=.23283376682103970D1                                            DA32 950
      Y=Y+.54406257907377837D19*FCT(X)                                  DA32 960
      X=.15555082314789380D1                                            DA32 970
      Y=Y+.11747996392819887D20*FCT(X)                                  DA32 980
      X=.9394832145007343D0                                             DA32 990
      Y=Y+.21699669861237368D20*FCT(X)                                  DA321000
      X=.47875647727748885D0                                            DA321010
      Y=Y+.34337168469816740D20*FCT(X)                                  DA321020
      X=.17221572414539558D0                                            DA321030
      Y=Y+.46598957212535609D20*FCT(X)                                  DA321040
      X=.19127510968446856D-1                                           DA321050
      Y=Y+.54275484988260796D20*FCT(X)                                  DA321060
	Y=Y*1.D-20
      RETURN                                                            DA321070
      END                                                               DA321080