Calculates the definite integral from 0
to a
of
exp(-0.5*h^2*(1+x^2))/(1+x^2)/(2*pi)
.
OwensT(h, a)
Numerical value of the definite integral.
parameter h
upper limit of integration
MATLAB code by J. Burkardt, R port by D. Labes
The function is an R port of FORTRAN code given in the references and MATLAB
code given by John Burkardt under the GNU LGPL license.
The arguments of OwensT()
have to be scalars because the implementation
doesn’t vectorize.
Goedhart PW, Jansen MJW. Remark AS R89: A Remark on Algorithm AS 76: An Integral Useful in Calculating Central t and Bivariate Normal Probabilities. J Royal Stat Soc C. 1992;41(2):496--7. tools:::Rd_expr_doi("10.2307/2347586")
Boys R. Algorithm AS R80: A Remark on Algorithm AS 76: An Integral Useful in Calculating Noncentral t and Bivariate Normal Probabilities. J Royal Stat Soc C. 1989;38(3):580--2. tools:::Rd_expr_doi("10.2307/2347755")
Thomas GE. Remark ASR 65: A Remark on Algorithm AS76: An Integral Useful in Calculating Non-Central t and Bivariate Normal Probabilities. J Royal Stat Soc C. 1986;35(3):310--2. tools:::Rd_expr_doi("10.2307/2348031")
Chou Y-M. Remark AS R55: A Remark on Algorithm AS 76: An Integral Useful in Calculating Noncentral T and Bivariate Normal Probabilities. J Royal Stat Soc C. 1985;34(1):100--1. tools:::Rd_expr_doi("10.2307/2347894")
Thomas GE. Remark AS R30: A Remark on Algorithm AS 76: An Integral Useful in Calculating Non-Central t and Bivariate Normal Probabilities. J Royal Stat Soc C. 1979;28(1):113. tools:::Rd_expr_doi("10.2307/2346833")
Young JC, Minder C. Algorithm AS 76: An Integral Useful in Calculating Non-Central t and Bivariate Normal Probabilities. J Royal Stat Soc C. 1974;23(3):455--7. tools:::Rd_expr_doi("10.2307/2347148")
Burkardt J. ASA076. Owen's T Function. https://people.math.sc.edu/Burkardt/f_src/asa076/asa076.html
Owen DB. Tables for Computing Bivariate Normal Probabilities. Ann Math Stat. 1956;27(4):1075--90. tools:::Rd_expr_doi("10.1214/aoms/1177728074")
OwensQOwen, OwensQ
OwensT(2.5, 0.75)
# should give [1] 0.002986697
# value from Owen's tables is 0.002987
OwensT(2.5, -0.75)
# should give [1] -0.002986697
Run the code above in your browser using DataLab