Top Description Methods
org.apache.commons.math3.distribution

public Interface RealDistribution

Known Direct Implementers
org.apache.commons.math3.distribution.AbstractRealDistribution
Imports
org.apache.commons.math3.exception.NumberIsTooLargeException, .OutOfRangeException

Base interface for distributions on the reals.
Since
3.0

Method Summary

Modifier and TypeMethod and Description
public double

Returns:

the probability that a random variable with this distribution takes a value less than or equal to x
cumulativeProbability
(double
the point at which the CDF is evaluated
x
)

For a random variable X whose values are distributed according to this distribution, this method returns P(X <= x).

public double

Returns:

the probability that a random variable with this distribution takes a value between x0 and x1, excluding the lower and including the upper endpoint
cumulativeProbability
(double
the exclusive lower bound
x0
,
double
the inclusive upper bound
x1
)
Deprecated As of 3.1. In 4.0, this method will be renamed probability(double x0, double x1).

For a random variable X whose values are distributed according to this distribution, this method returns P(x0 < X <= x1).

public double

Returns:

the value of the probability density function at point x
density
(double
the point at which the PDF is evaluated
x
)

Returns the probability density function (PDF) of this distribution evaluated at the specified point x.

public double

Returns:

the mean or Double.NaN if it is not defined
getNumericalMean
()

Use this method to get the numerical value of the mean of this distribution.

public double

Returns:

the variance (possibly Double.POSITIVE_INFINITY as for certain cases in TDistribution) or Double.NaN if it is not defined
getNumericalVariance
()

Use this method to get the numerical value of the variance of this distribution.

public double

Returns:

lower bound of the support (might be Double.NEGATIVE_INFINITY)
getSupportLowerBound
()

Access the lower bound of the support.

public double

Returns:

upper bound of the support (might be Double.POSITIVE_INFINITY)
getSupportUpperBound
()

Access the upper bound of the support.

public double

Returns:

the smallest p-quantile of this distribution (largest 0-quantile for p = 0)
inverseCumulativeProbability
(double
the cumulative probability
p
)

Computes the quantile function of this distribution.

public boolean

Returns:

whether the support is connected or not
isSupportConnected
()

Use this method to get information about whether the support is connected, i.e. whether all values between the lower and upper bound of the support are included in the support.

public boolean

Returns:

true if the lower bound of support is finite and the density function returns a non-NaN, non-infinite value there
isSupportLowerBoundInclusive
()
Deprecated to be removed in 4.0

Whether or not the lower bound of support is in the domain of the density function.

public boolean

Returns:

true if the upper bound of support is finite and the density function returns a non-NaN, non-infinite value there
isSupportUpperBoundInclusive
()
Deprecated to be removed in 4.0

Whether or not the upper bound of support is in the domain of the density function.

public double

Returns:

the value of the probability mass function at point x
probability
(double
the point at which the PMF is evaluated
x
)

For a random variable X whose values are distributed according to this distribution, this method returns P(X = x).

public void
reseedRandomGenerator(long
the new seed
seed
)

Reseed the random generator used to generate samples.

public double

Returns:

a random value.
sample
()

Generate a random value sampled from this distribution.

public double[]

Returns:

an array representing the random sample
sample
(int
the number of random values to generate
sampleSize
)

Generate a random sample from the distribution.

Method Detail

cumulativeProbabilityback to summary
public double cumulativeProbability(double x)

For a random variable X whose values are distributed according to this distribution, this method returns P(X <= x). In other words, this method represents the (cumulative) distribution function (CDF) for this distribution.

Parameters
x:double

the point at which the CDF is evaluated

Returns:double

the probability that a random variable with this distribution takes a value less than or equal to x

cumulativeProbabilityback to summary
public double cumulativeProbability(double x0, double x1) throws NumberIsTooLargeException

Deprecated

As of 3.1. In 4.0, this method will be renamed probability(double x0, double x1).

For a random variable X whose values are distributed according to this distribution, this method returns P(x0 < X <= x1).

Parameters
x0:double

the exclusive lower bound

x1:double

the inclusive upper bound

Returns:double

the probability that a random variable with this distribution takes a value between x0 and x1, excluding the lower and including the upper endpoint

Annotations
@Deprecated
Exceptions
NumberIsTooLargeException:
if x0 > x1
densityback to summary
public double density(double x)

Returns the probability density function (PDF) of this distribution evaluated at the specified point x. In general, the PDF is the derivative of the CDF. If the derivative does not exist at x, then an appropriate replacement should be returned, e.g. Double.POSITIVE_INFINITY, Double.NaN, or the limit inferior or limit superior of the difference quotient.

Parameters
x:double

the point at which the PDF is evaluated

Returns:double

the value of the probability density function at point x

getNumericalMeanback to summary
public double getNumericalMean()

Use this method to get the numerical value of the mean of this distribution.

Returns:double

the mean or Double.NaN if it is not defined

getNumericalVarianceback to summary
public double getNumericalVariance()

Use this method to get the numerical value of the variance of this distribution.

Returns:double

the variance (possibly Double.POSITIVE_INFINITY as for certain cases in TDistribution) or Double.NaN if it is not defined

getSupportLowerBoundback to summary
public double getSupportLowerBound()

Access the lower bound of the support. This method must return the same value as inverseCumulativeProbability(0). In other words, this method must return

inf {x in R | P(X <= x) > 0}.

Returns:double

lower bound of the support (might be Double.NEGATIVE_INFINITY)

getSupportUpperBoundback to summary
public double getSupportUpperBound()

Access the upper bound of the support. This method must return the same value as inverseCumulativeProbability(1). In other words, this method must return

inf {x in R | P(X <= x) = 1}.

Returns:double

upper bound of the support (might be Double.POSITIVE_INFINITY)

inverseCumulativeProbabilityback to summary
public double inverseCumulativeProbability(double p) throws OutOfRangeException

Computes the quantile function of this distribution. For a random variable X distributed according to this distribution, the returned value is

  • inf{x in R | P(X<=x) >= p} for 0 < p <= 1,
  • inf{x in R | P(X<=x) > 0} for p = 0.
Parameters
p:double

the cumulative probability

Returns:double

the smallest p-quantile of this distribution (largest 0-quantile for p = 0)

Exceptions
OutOfRangeException:
if p < 0 or p > 1
isSupportConnectedback to summary
public boolean isSupportConnected()

Use this method to get information about whether the support is connected, i.e. whether all values between the lower and upper bound of the support are included in the support.

Returns:boolean

whether the support is connected or not

isSupportLowerBoundInclusiveback to summary
public boolean isSupportLowerBoundInclusive()

Deprecated

to be removed in 4.0

Whether or not the lower bound of support is in the domain of the density function. Returns true iff getSupporLowerBound() is finite and density(getSupportLowerBound()) returns a non-NaN, non-infinite value.

Returns:boolean

true if the lower bound of support is finite and the density function returns a non-NaN, non-infinite value there

Annotations
@Deprecated
isSupportUpperBoundInclusiveback to summary
public boolean isSupportUpperBoundInclusive()

Deprecated

to be removed in 4.0

Whether or not the upper bound of support is in the domain of the density function. Returns true iff getSupportUpperBound() is finite and density(getSupportUpperBound()) returns a non-NaN, non-infinite value.

Returns:boolean

true if the upper bound of support is finite and the density function returns a non-NaN, non-infinite value there

Annotations
@Deprecated
probabilityback to summary
public double probability(double x)

For a random variable X whose values are distributed according to this distribution, this method returns P(X = x). In other words, this method represents the probability mass function (PMF) for the distribution.

Parameters
x:double

the point at which the PMF is evaluated

Returns:double

the value of the probability mass function at point x

reseedRandomGeneratorback to summary
public void reseedRandomGenerator(long seed)

Reseed the random generator used to generate samples.

Parameters
seed:long

the new seed

sampleback to summary
public double sample()

Generate a random value sampled from this distribution.

Returns:double

a random value.

sampleback to summary
public double[] sample(int sampleSize)

Generate a random sample from the distribution.

Parameters
sampleSize:int

the number of random values to generate

Returns:double[]

an array representing the random sample

Exceptions
NotStrictlyPositiveException:
if sampleSize is not positive