Routine ID: C327 | |
---|---|
Author(s): K.S. Kölbig | Library: MATHLIB |
Submitter: | Submitted: 15.05.1987 |
Language: Fortran | Revised: 15.03.1993 |
Function subprograms BSIR4, BSKR4 and DBSIR4, DBSKR4 calculate the modified Bessel functions
for real arguments x>0 and . The value x=0 is permitted for the functions I if . Note that the functions K are even with respect to .
On CDC and Cray computers, the double-precision versions DBSIR4 etc. are not available.
Structure:
FUNCTION subprograms
User Entry Names:
BSIR4, BSKR4,EBSIR4, EBSKR4,
DBSIR4, DBSKR4, DEBIR4, DEBKR4
Files Referenced: Unit 6
External References: MTLMTR (N002), ABEND (Z035)
Usage:
In any arithmetic expression,
BSIR4(X,NU) or DBSIR4(X,NU)
has the value
,
BSKR4(X,NU) or DBSKR4(X,NU)
has the value
,
EBSIR4(X,NU) or DEBIR4(X,NU)
has the value
,
EBSKR4(X,NU) or DEBKR4(X,NU)
has the value
,
where BSIR4 etc. are of the type REAL, DBSIR4 etc.
are of the type DOUBLE PRECISION, and X has the same type as
the function name. NU is of type INTEGER
and must have one of the values -3,-2,-1,1,2,3.
Method:
Approximation by rational functions (I for |x|<8, K for ), by an algorithm based on power series (K for 0 < x < 1), or else by truncated Chebyshev series. The cases are elementary.
Accuracy:
BSIR4 etc. (except on CDC and Cray computers) have full single-precision accuracy. For most values of the argument X, DBSIR4 etc. (and BSIR4 etc. on CDC and Cray computers) have an accuracy of approximately one significant digit less than the machine precision.
Error handling:
Error C327.1: , or , respectively, or NU -3,-2,-1,1,2,3. The function value is set equal to zero, and a message is written on Unit 6, unless subroutine MTLSET (N002) has been called.
References: