home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frostbyte's 1980s DOS Shareware Collection
/
floppyshareware.zip
/
floppyshareware
/
DOOG
/
PCSSP1.ZIP
/
AGLGQUAD.ZIP
/
DQA16.FOR
< prev
next >
Wrap
Text File
|
1985-11-29
|
3KB
|
77 lines
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