Class IncompleteBeta

java.lang.Object
org.apache.commons.numbers.gamma.IncompleteBeta

public final class IncompleteBeta extends Object
Incomplete Beta function.

\[ B_x(a,b) = \int_0^x t^{a-1}\,(1-t)^{b-1}\,dt \]

This code has been adapted from the Boost c++ implementation <boost/math/special_functions/beta.hpp>.

Since:
1.1
See Also:
  • Constructor Details

    • IncompleteBeta

      private IncompleteBeta()
      Private constructor.
  • Method Details

    • value

      public static double value(double x, double a, double b)
      Computes the value of the incomplete beta function B(x, a, b).

      \[ B_x(a,b) = \int_0^x t^{a-1}\,(1-t)^{b-1}\,dt \]

      Parameters:
      x - Value.
      a - Parameter a.
      b - Parameter b.
      Returns:
      the incomplete beta function \( B_x(a, b) \).
      Throws:
      ArithmeticException - if the series evaluation fails to converge.
    • value

      public static double value(double x, double a, double b, double epsilon, int maxIterations)
      Computes the value of the incomplete beta function B(x, a, b).

      \[ B_x(a,b) = \int_0^x t^{a-1}\,(1-t)^{b-1}\,dt \]

      Parameters:
      x - the value.
      a - Parameter a.
      b - Parameter b.
      epsilon - Tolerance in series evaluation.
      maxIterations - Maximum number of iterations in series evaluation.
      Returns:
      the incomplete beta function \( B_x(a, b) \).
      Throws:
      ArithmeticException - if the series evaluation fails to converge.
    • complement

      public static double complement(double x, double a, double b)
      Computes the complement of the incomplete beta function B(x, a, b).

      \[ B(a, b) - B_x(a,b) = B_{1-x}(b, a) \]

      where \( B(a, b) \) is the beta function.

      Parameters:
      x - Value.
      a - Parameter a.
      b - Parameter b.
      Returns:
      the complement of the incomplete beta function \( B(a, b) - B_x(a, b) \).
      Throws:
      ArithmeticException - if the series evaluation fails to converge.
    • complement

      public static double complement(double x, double a, double b, double epsilon, int maxIterations)
      Computes the complement of the incomplete beta function B(x, a, b).

      \[ B(a, b) - B_x(a,b) = B_{1-x}(b, a) \]

      where \( B(a, b) \) is the beta function.

      Parameters:
      x - the value.
      a - Parameter a.
      b - Parameter b.
      epsilon - Tolerance in series evaluation.
      maxIterations - Maximum number of iterations in series evaluation.
      Returns:
      the complement of the incomplete beta function \( B(a, b) - B_x(a, b) \).
      Throws:
      ArithmeticException - if the series evaluation fails to converge.