View source code
Display the source code in std/mathspecial.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

Function std.mathspecial.betaIncomplete

Incomplete beta integral

real betaIncomplete (
  real a,
  real b,
  real x
) pure nothrow @nogc @safe;

Returns regularized incomplete beta integral of the arguments, evaluated from zero to x. The regularized incomplete beta function is defined as

betaIncomplete(a, b, x) = Γ(a + b) / ( Γ(a) Γ(b) ) * 0x ta-1(1-t)b-1 dt

and is the same as the cumulative distribution function of the Beta distribution.

The domain of definition is 0 <= x <= 1. In this implementation a and b are restricted to positive values. The integral from x to 1 may be obtained by the symmetry relation

betaIncompleteCompl(a, b, x ) = betaIncomplete( b, a, 1-x )

The integral is evaluated by a continued fraction expansion or, when b * x is small, by a power series.


Stephen L. Moshier (original C code). Conversion to D by Don Clugston


Boost License 1.0.