Intel® Fortran Compiler 17.0 Developer Guide and Reference
Portability Functions: Compute the double-precision values of Bessel functions of the first and second kinds.
USE IFPORT
result = DBESJ0 (value)
result = DBESJ1 (value)
result = DBESJN (n, value)
result = DBESY0 (posvalue)
result = DBESY1 (posvalue)
result = DBESYN (n, posvalue)
value |
(Input) REAL(8). Independent variable for a Bessel function. |
n |
(Input) INTEGER(4). Specifies the order of the selected Bessel function computation. |
posvalue |
(Input) REAL(8). Independent variable for a Bessel function. Must be greater than or equal to zero. |
DBESJ0, DBESJ1, and DBESJN return Bessel functions of the first kind, orders 0, 1, and n, respectively, with the independent variable value.
DBESY0, DBESY1, and DBESYN return Bessel functions of the second kind, orders 0, 1, and n, respectively, with the independent variable posvalue.
Negative arguments cause DBESY0, DBESY1, and DBESYN to return a huge negative value.
Bessel functions are explained more fully in most mathematics reference books, such as the Handbook of Mathematical Functions(Abramowitz and Stegun. Washington: U.S. Government Printing Office, 1964). These functions are commonly used in the mathematics of electromagnetic wave theory.
See the descriptions of the BESSEL_* functions, if you need to use quad-precision (REAL(16)).
USE IFPORT
real(8) besnum, besout
10 read *, besnum
besout = dbesj0(besnum)
print *, 'result is ',besout
goto 10
end