Package cern.jet.stat

Class Gamma


  • public class Gamma
    extends Constants
    Gamma and Beta functions.

    Implementation:

    Some code taken and adapted from the Java 2D Graph Package 2.4, which in turn is a port from the Cephes 2.2 Math Library (C). Most Cephes code (missing from the 2D Graph Package) directly ported.
    Version:
    0.9, 22-Jun-99
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected Gamma()
      Makes this class non instantiable, but still let's others inherit from it.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static double beta​(double a, double b)
      Returns the beta function of the arguments.
      static double gamma​(double x)
      Returns the Gamma function of the argument.
      static double incompleteBeta​(double aa, double bb, double xx)
      Returns the Incomplete Beta Function evaluated from zero to xx; formerly named ibeta.
      (package private) static double incompleteBetaFraction1​(double a, double b, double x)
      Continued fraction expansion #1 for incomplete beta integral; formerly named incbcf.
      (package private) static double incompleteBetaFraction2​(double a, double b, double x)
      Continued fraction expansion #2 for incomplete beta integral; formerly named incbd.
      static double incompleteGamma​(double a, double x)
      Returns the Incomplete Gamma function; formerly named igamma.
      static double incompleteGammaComplement​(double a, double x)
      Returns the Complemented Incomplete Gamma function; formerly named igamc.
      static double logGamma​(double x)
      Returns the natural logarithm of the gamma function; formerly named lgamma.
      (package private) static double powerSeries​(double a, double b, double x)
      Power series for incomplete beta integral; formerly named pseries.
      (package private) static double stirlingFormula​(double x)
      Returns the Gamma function computed by Stirling's formula; formerly named stirf.
      • Methods inherited from class java.lang.Object

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

      • Gamma

        protected Gamma()
        Makes this class non instantiable, but still let's others inherit from it.
    • Method Detail

      • beta

        public static double beta​(double a,
                                  double b)
                           throws java.lang.ArithmeticException
        Returns the beta function of the arguments.
                           -     -
                          | (a) | (b)
         beta( a, b )  =  -----------.
                             -
                            | (a+b)
         
        Throws:
        java.lang.ArithmeticException
      • gamma

        public static double gamma​(double x)
                            throws java.lang.ArithmeticException
        Returns the Gamma function of the argument.
        Throws:
        java.lang.ArithmeticException
      • incompleteBeta

        public static double incompleteBeta​(double aa,
                                            double bb,
                                            double xx)
                                     throws java.lang.ArithmeticException
        Returns the Incomplete Beta Function evaluated from zero to xx; formerly named ibeta.
        Parameters:
        aa - the alpha parameter of the beta distribution.
        bb - the beta parameter of the beta distribution.
        xx - the integration end point.
        Throws:
        java.lang.ArithmeticException
      • incompleteBetaFraction1

        static double incompleteBetaFraction1​(double a,
                                              double b,
                                              double x)
                                       throws java.lang.ArithmeticException
        Continued fraction expansion #1 for incomplete beta integral; formerly named incbcf.
        Throws:
        java.lang.ArithmeticException
      • incompleteBetaFraction2

        static double incompleteBetaFraction2​(double a,
                                              double b,
                                              double x)
                                       throws java.lang.ArithmeticException
        Continued fraction expansion #2 for incomplete beta integral; formerly named incbd.
        Throws:
        java.lang.ArithmeticException
      • incompleteGamma

        public static double incompleteGamma​(double a,
                                             double x)
                                      throws java.lang.ArithmeticException
        Returns the Incomplete Gamma function; formerly named igamma.
        Parameters:
        a - the parameter of the gamma distribution.
        x - the integration end point.
        Throws:
        java.lang.ArithmeticException
      • incompleteGammaComplement

        public static double incompleteGammaComplement​(double a,
                                                       double x)
                                                throws java.lang.ArithmeticException
        Returns the Complemented Incomplete Gamma function; formerly named igamc.
        Parameters:
        a - the parameter of the gamma distribution.
        x - the integration start point.
        Throws:
        java.lang.ArithmeticException
      • logGamma

        public static double logGamma​(double x)
                               throws java.lang.ArithmeticException
        Returns the natural logarithm of the gamma function; formerly named lgamma.
        Throws:
        java.lang.ArithmeticException
      • powerSeries

        static double powerSeries​(double a,
                                  double b,
                                  double x)
                           throws java.lang.ArithmeticException
        Power series for incomplete beta integral; formerly named pseries. Use when b*x is small and x not too close to 1.
        Throws:
        java.lang.ArithmeticException
      • stirlingFormula

        static double stirlingFormula​(double x)
                               throws java.lang.ArithmeticException
        Returns the Gamma function computed by Stirling's formula; formerly named stirf. The polynomial STIR is valid for 33 <= x <= 172.
        Throws:
        java.lang.ArithmeticException