Class RegularizedBeta

• public final class RegularizedBeta
extends Object
Regularized Beta function.

$I_x(a,b) = \frac{1}{B(a, b)} \int_0^x t^{a-1}\,(1-t)^{b-1}\,dt$

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

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

Boost C++ Incomplete Beta functions
• Method Summary

All Methods
Modifier and Type Method Description
static double complement​(double x, double a, double b)
Computes the complement of the regularized beta function I(x, a, b).
static double complement​(double x, double a, double b, double epsilon, int maxIterations)
Computes the complement of the regularized beta function I(x, a, b).
static double derivative​(double x, double a, double b)
Computes the derivative of the regularized beta function I(x, a, b).
static double value​(double x, double a, double b)
Computes the value of the regularized beta function I(x, a, b).
static double value​(double x, double a, double b, double epsilon, int maxIterations)
Computes the value of the regularized beta function I(x, a, b).
• Methods inherited from class java.lang.Object

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

• value

public static double value​(double x,
double a,
double b)
Computes the value of the regularized beta function I(x, a, b).

$I_x(a,b) = \frac{1}{B(a, b)} \int_0^x t^{a-1}\,(1-t)^{b-1}\,dt$

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

Parameters:
x - Value.
a - Parameter a.
b - Parameter b.
Returns:
the regularized beta function $$I_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 regularized beta function I(x, a, b).

$I_x(a,b) = \frac{1}{B(a, b)} \int_0^x t^{a-1}\,(1-t)^{b-1}\,dt$

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 regularized beta function $$I_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 regularized beta function I(x, a, b).

$1 - I_x(a,b) = I_{1-x}(b, a)$

Parameters:
x - Value.
a - Parameter a.
b - Parameter b.
Returns:
the complement of the regularized beta function $$1 - I_x(a, b)$$.
Throws:
ArithmeticException - if the series evaluation fails to converge.
Since:
1.1
• complement

public static double complement​(double x,
double a,
double b,
double epsilon,
int maxIterations)
Computes the complement of the regularized beta function I(x, a, b).

$1 - I_x(a,b) = I_{1-x}(b, a)$

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 regularized beta function $$1 - I_x(a, b)$$.
Throws:
ArithmeticException - if the series evaluation fails to converge.
Since:
1.1
• derivative

public static double derivative​(double x,
double a,
double b)
Computes the derivative of the regularized beta function I(x, a, b).

$\frac{\delta}{\delta x} I_x(a,b) = \frac{(1-x)^{b-1} x^{a-1}}{B(a, b)}$

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

This function has uses in some statistical distributions.

Parameters:
x - Value.
a - Parameter a.
b - Parameter b.
Returns:
the derivative of the regularized beta function $$I_x(a, b)$$.
Throws:
ArithmeticException - if the series evaluation fails to converge.
Since:
1.1