public class GeometricDistribution extends AbstractIntegerDistribution
random, randomData| Constructor and Description |
|---|
GeometricDistribution(double p)
Create a geometric distribution with the given probability of success.
|
GeometricDistribution(RandomGenerator rng,
double p)
Creates a geometric distribution.
|
| Modifier and Type | Method and Description |
|---|---|
double |
cumulativeProbability(int x)
For a random variable
X whose values are distributed according
to this distribution, this method returns P(X <= x). |
double |
getNumericalMean()
Use this method to get the numerical value of the mean of this
distribution.
|
double |
getNumericalVariance()
Use this method to get the numerical value of the variance of this
distribution.
|
double |
getProbabilityOfSuccess()
Access the probability of success for this distribution.
|
int |
getSupportLowerBound()
Access the lower bound of the support.
|
int |
getSupportUpperBound()
Access the upper bound of the support.
|
int |
inverseCumulativeProbability(double p)
Computes the quantile function of this distribution.
|
boolean |
isSupportConnected()
Use this method to get information about whether the support is
connected, i.e.
|
double |
logProbability(int x)
For a random variable
X whose values are distributed according to
this distribution, this method returns log(P(X = x)), where
log is the natural logarithm. |
double |
probability(int x)
For a random variable
X whose values are distributed according
to this distribution, this method returns P(X = x). |
cumulativeProbability, reseedRandomGenerator, sample, sample, solveInverseCumulativeProbabilitypublic GeometricDistribution(double p)
Note: this constructor will implicitly create an instance of
Well19937c as random generator to be used for sampling only (see
AbstractIntegerDistribution.sample() and AbstractIntegerDistribution.sample(int)). In case no sampling is
needed for the created distribution, it is advised to pass null
as random generator via the appropriate constructors to avoid the
additional initialisation overhead.
p - probability of success.OutOfRangeException - if p <= 0 or p > 1.public GeometricDistribution(RandomGenerator rng, double p)
rng - Random number generator.p - Probability of success.OutOfRangeException - if p <= 0 or p > 1.public double getProbabilityOfSuccess()
public double probability(int x)
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.x - the point at which the PMF is evaluatedxpublic double logProbability(int x)
X whose values are distributed according to
this distribution, this method returns log(P(X = x)), where
log is the natural logarithm. In other words, this method
represents the logarithm of the probability mass function (PMF) for the
distribution. Note that due to the floating point precision and
under/overflow issues, this method will for some distributions be more
precise and faster than computing the logarithm of
IntegerDistribution.probability(int).
The default implementation simply computes the logarithm of probability(x).
logProbability in class AbstractIntegerDistributionx - the point at which the PMF is evaluatedxpublic double cumulativeProbability(int x)
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.x - the point at which the CDF is evaluatedxpublic double getNumericalMean()
p, the mean is (1 - p) / p.Double.NaN if it is not definedpublic double getNumericalVariance()
p, the variance is
(1 - p) / (p * p).Double.POSITIVE_INFINITY or
Double.NaN if it is not defined)public int getSupportLowerBound()
inverseCumulativeProbability(0). In other words, this
method must return
inf {x in Z | P(X <= x) > 0}.
public int getSupportUpperBound()
inverseCumulativeProbability(1). In other words, this
method must return
inf {x in R | P(X <= x) = 1}.
Integer.MAX_VALUE).public boolean isSupportConnected()
truepublic int inverseCumulativeProbability(double p)
throws OutOfRangeException
X distributed according to this distribution,
the returned value is
inf{x in Z | P(X<=x) >= p} for 0 < p <= 1,inf{x in Z | P(X<=x) > 0} for p = 0.int,
then Integer.MIN_VALUE or Integer.MAX_VALUE is returned.
The default implementation returns
IntegerDistribution.getSupportLowerBound() for p = 0,IntegerDistribution.getSupportUpperBound() for p = 1, andAbstractIntegerDistribution.solveInverseCumulativeProbability(double, int, int) for
0 < p < 1.inverseCumulativeProbability in interface IntegerDistributioninverseCumulativeProbability in class AbstractIntegerDistributionp - the cumulative probabilityp-quantile of this distribution
(largest 0-quantile for p = 0)OutOfRangeException - if p < 0 or p > 1Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.