Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

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