Documentation of 'jdistlib.math.Bessel' Java class
Bessel
jdistlib.math

Class Bessel



  • public class Bessel
    extends java.lang.Object
    Collection of Bessel functions.
    • j is Bessel function of the first kind.
    • y is Bessel function of the second kind.
    • i is modified Bessel function of the first kind.
    • k is modified Bessel function of the third kind.
    • Constructor Summary

      Constructors 
      Constructor and Description
      Bessel() 
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      static double i(double x, double alpha, boolean expo)
      This routine calculates Bessel functions I_{alpha} (x) for non-negative argument x, and order alpha, with or without exponential scaling.
      static double j(double x, double alpha)
      Calculates Bessel functions J_{alpha} (x) for non-negative argument x, and order alpha.
      static double k(double x, double alpha, boolean expo)
      This routine calculates modified Bessel functions of the third kind, K_{alpha} (x), for non-negative argument x, and order alpha, with or without exponential scaling.
      static double y(double x, double alpha)
      This routine calculates Bessel functions Y_{alpha} (x) for non-negative argument X, and order alpha.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Bessel

        public Bessel()
    • Method Detail

      • j

        public static final double j(double x,
                                     double alpha)

        Calculates Bessel functions J_{alpha} (x) for non-negative argument x, and order alpha.

        Acknowledgement

        This program is based on a program written by David J. Sookne (2) that computes values of the Bessel functions J or I of float argument and long order. Modifications include the restriction of the computation to the J Bessel function of non-negative float argument, the extension of the computation to arbitrary positive order, and the elimination of most underflow.

        References:

        1. Olver, F.W.J., and Sookne, D.J. (1972) "A Note on Backward Recurrence Algorithms"; Math. Comp. 26, 941-947.
        2. Sookne, D.J. (1973) "Bessel Functions of Real Argument and Integer Order"; NBS Jour. of Res. B. 77B, 125-132.

        Latest modification: March 19, 1990

        @author W. J. Cody

        Applied Mathematics Division
        Argonne National Laboratory
        Argonne, IL 60439

        Parameters:
        x - Non-negative argument for which J's are to be calculated.
        alpha - Order for which J's are to be calculated.
      • y

        public static final double y(double x,
                                     double alpha)

        This routine calculates Bessel functions Y_{alpha} (x) for non-negative argument X, and order alpha.

        Acknowledgement

        This program draws heavily on Temme's Algol program for Y(a,x) and Y(a+1,x) and on Campbell's programs for Y_nu(x). Temme's scheme is used for x < THRESH, and Campbell's scheme is used in the asymptotic region. Segments of code from both sources have been translated into Fortran 77, merged, and heavily modified. Modifications include parameterization of machine dependencies, use of a new approximation for ln(gamma(x)), and built-in protection against over/underflow.

        References:

        1. "Bessel functions J_nu(x) and Y_nu(x) of float order and float argument," Campbell, J. B., Comp. Phy. Comm. 18, 1979, pp. 133-142.
        2. "On the numerical evaluation of the ordinary Bessel function of the second kind," Temme, N. M., J. Comput. Phys. 21, 1976, pp. 343-350.

        Latest modification: March 19, 1990

        @author Modified by: W. J. Cody

        Applied Mathematics Division
        Argonne National Laboratory
        Argonne, IL 60439

        Parameters:
        x - Non-negative argument for which Y's are to be calculated.
        alpha - Order for which Y's are to be calculated.
      • i

        public static final double i(double x,
                                     double alpha,
                                     boolean expo)

        This routine calculates Bessel functions I_{alpha} (x) for non-negative argument x, and order alpha, with or without exponential scaling.

        Acknowledgement

        This program is based on a program written by David J. Sookne (2) that computes values of the Bessel functions J or I of float argument and long order. Modifications include the restriction of the computation to the I Bessel function of non-negative float argument, the extension of the computation to arbitrary positive order, the inclusion of optional exponential scaling, and the elimination of most underflow. An earlier version was published in (3).

        References:

        1. "A Note on Backward Recurrence Algorithms," Olver, F. W. J., and Sookne, D. J., Math. Comp. 26, 1972, pp 941-947.
        2. "Bessel Functions of Real Argument and Integer Order," Sookne, D. J., NBS Jour. of Res. B. 77B, 1973, pp 125-132.
        3. "ALGORITHM 597, Sequence of Modified Bessel Functions of the First Kind," Cody, W. J., Trans. Math. Soft., 1983, pp. 242-245.

        Latest modification: May 30, 1989

        @author Modified by: W. J. Cody and L. Stoltz
        Applied Mathematics Division
        Argonne National Laboratory
        Argonne, IL 60439

        Parameters:
        x - Non-negative argument for which I's or exponentially scaled I's (I*EXP(-x)) are to be calculated. If I's are to be calculated x must be less than exparg_BESS (=709, when expo == FALSE) or xlrg_BESS_IJ (=1e5, when expo == TRUE)
        alpha - - Order for which I's or exponentially scaled I's (I*EXP(-x)) are to be calculated.
        expo - - set true if exponentially scaled I's are to be calculated. Else, if unscaled I's are to be calculated.
      • k

        public static final double k(double x,
                                     double alpha,
                                     boolean expo)

        This routine calculates modified Bessel functions of the third kind, K_{alpha} (x), for non-negative argument x, and order alpha, with or without exponential scaling.

        Acknowledgement

        This program is based on a program written by J. B. Campbell (2) that computes values of the Bessel functions K of float argument and float order. Modifications include the addition of non-scaled functions, parameterization of machine dependencies, and the use of more accurate approximations for SINH and SIN.

        References:

        1. "On Temme's Algorithm for the Modified Bessel Functions of the Third Kind," Campbell, J. B., TOMS 6(4), Dec. 1980, pp. 581-586.
        2. "A FORTRAN IV Subroutine for the Modified Bessel Functions of the Third Kind of Real Order and Real Argument," Campbell, J. B., Report NRC/ERB-925, National Research Council, Canada.

        Latest modification: May 30, 1989

        @author Modified by: W. J. Cody and L. Stoltz Applied Mathematics Division
        Argonne National Laboratory
        Argonne, IL 60439

        Parameters:
        x - Non-negative argument for which K's or exponentially scaled K's (K*EXP(x)) are to be calculated. If K's are to be calculated, X must not be greater than XMAX_BESS_K (=705.342).
        alpha - Order for which K's or exponentially scaled K's (K*EXP(X)) are to be calculated.
        expo - - set true if exponentially scaled K's are to be calculated. Else, if unscaled K's are to be calculated.

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.