Visible to Intel only — GUID: GUID-537CE242-303F-4A0A-9D37-3BBA702D903C
Visible to Intel only — GUID: GUID-537CE242-303F-4A0A-9D37-3BBA702D903C
DBESJ0, DBESJ1, DBESJN, DBESY0, DBESY1, DBESYN
Portability Functions: Compute the double-precision values of Bessel functions of the first and second kinds.
Module
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. |
Results
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)).
Example
USE IFPORT real(8) besnum, besout 10 read *, besnum besout = dbesj0(besnum) print *, 'result is ',besout goto 10 end