|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.commons.math.distribution.AbstractDistribution
org.apache.commons.math.distribution.AbstractContinuousDistribution
org.apache.commons.math.distribution.ExponentialDistributionImpl
public class ExponentialDistributionImpl
The default implementation of ExponentialDistribution.
| Field Summary | |
|---|---|
static double |
DEFAULT_INVERSE_ABSOLUTE_ACCURACY
Default inverse cumulative probability accuracy. |
| Fields inherited from class org.apache.commons.math.distribution.AbstractContinuousDistribution |
|---|
randomData, SOLVER_DEFAULT_ABSOLUTE_ACCURACY |
| Constructor Summary | |
|---|---|
ExponentialDistributionImpl(double mean)
Create a exponential distribution with the given mean. |
|
ExponentialDistributionImpl(double mean,
double inverseCumAccuracy)
Create a exponential distribution with the given mean. |
|
| Method Summary | |
|---|---|
protected double |
calculateNumericalMean()
Use this method to actually calculate the mean for the specific distribution. |
protected double |
calculateNumericalVariance()
Use this method to actually calculate the variance for the specific distribution. |
double |
cumulativeProbability(double x)
For this distribution, X, this method returns P(X < x). |
double |
density(double x)
Probability density for a particular point. |
protected double |
getDomainLowerBound(double p)
Access the domain value lower bound, based on p, used to
bracket a CDF root. |
protected double |
getDomainUpperBound(double p)
Access the domain value upper bound, based on p, used to
bracket a CDF root. |
protected double |
getInitialDomain(double p)
Access the initial domain value, based on p, used to
bracket a CDF root. |
double |
getMean()
Access the mean. |
protected double |
getSolverAbsoluteAccuracy()
Return the absolute accuracy setting of the solver used to estimate inverse cumulative probabilities. |
double |
getSupportLowerBound()
Access the lower bound of the support. |
double |
getSupportUpperBound()
Access the upper bound of the support. |
double |
inverseCumulativeProbability(double p)
For this distribution, X, this method returns the critical point x, such that P(X < x) = p. |
boolean |
isSupportLowerBoundInclusive()
Use this method to get information about whether the lower bound of the support is inclusive or not. |
boolean |
isSupportUpperBoundInclusive()
Use this method to get information about whether the upper bound of the support is inclusive or not. |
double |
sample()
Generates a random value sampled from this distribution. |
| Methods inherited from class org.apache.commons.math.distribution.AbstractContinuousDistribution |
|---|
reseedRandomGenerator, sample |
| Methods inherited from class org.apache.commons.math.distribution.AbstractDistribution |
|---|
cumulativeProbability, getNumericalMean, getNumericalVariance, isSupportConnected |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.apache.commons.math.distribution.ContinuousDistribution |
|---|
reseedRandomGenerator, sample |
| Methods inherited from interface org.apache.commons.math.distribution.Distribution |
|---|
cumulativeProbability, getNumericalMean, getNumericalVariance, isSupportConnected |
| Field Detail |
|---|
public static final double DEFAULT_INVERSE_ABSOLUTE_ACCURACY
| Constructor Detail |
|---|
public ExponentialDistributionImpl(double mean)
mean - mean of this distribution.
public ExponentialDistributionImpl(double mean,
double inverseCumAccuracy)
mean - Mean of this distribution.inverseCumAccuracy - Maximum absolute error in inverse
cumulative probability estimates (defaults to
DEFAULT_INVERSE_ABSOLUTE_ACCURACY).
NotStrictlyPositiveException - if mean <= 0.| Method Detail |
|---|
public double getMean()
getMean in interface ExponentialDistributionpublic double density(double x)
density in interface ContinuousDistributiondensity in class AbstractContinuousDistributionx - Point at which the density should be computed.
x.public double cumulativeProbability(double x)
cumulativeProbability in interface Distributionx - Value at which the CDF is evaluated.
public double inverseCumulativeProbability(double p)
P(X < x) = p.
It will return 0 when p = 0 and Double.POSITIVE_INFINITY
when p = 1.
inverseCumulativeProbability in interface ContinuousDistributioninverseCumulativeProbability in class AbstractContinuousDistributionp - Desired probability.
x, such that P(X < x) = p.
OutOfRangeException - if p < 0 or p > 1.public double sample()
Algorithm Description: Uses the Inversion Method to generate exponentially distributed random values from uniform deviates.
sample in interface ContinuousDistributionsample in class AbstractContinuousDistributionprotected double getDomainLowerBound(double p)
p, used to
bracket a CDF root.
getDomainLowerBound in class AbstractContinuousDistributionp - Desired probability for the critical value.
P(X < 'lower bound') < p.protected double getDomainUpperBound(double p)
p, used to
bracket a CDF root.
getDomainUpperBound in class AbstractContinuousDistributionp - Desired probability for the critical value.
P(X < 'upper bound') > p.protected double getInitialDomain(double p)
p, used to
bracket a CDF root.
getInitialDomain in class AbstractContinuousDistributionp - Desired probability for the critical value.
protected double getSolverAbsoluteAccuracy()
getSolverAbsoluteAccuracy in class AbstractContinuousDistributionpublic double getSupportLowerBound()
getSupportLowerBound in class AbstractContinuousDistributionpublic double getSupportUpperBound()
getSupportUpperBound in class AbstractContinuousDistributionprotected double calculateNumericalMean()
AbstractDistribution.getNumericalMean()
(which implements caching) to actually get the mean.
For mean parameter k, the mean is
k
calculateNumericalMean in class AbstractDistributionprotected double calculateNumericalVariance()
AbstractDistribution.getNumericalVariance()
(which implements caching) to actually get the variance.
For mean parameter k, the variance is
k^2
calculateNumericalVariance in class AbstractDistributionpublic boolean isSupportLowerBoundInclusive()
isSupportLowerBoundInclusive in interface DistributionisSupportLowerBoundInclusive in class AbstractDistributionpublic boolean isSupportUpperBoundInclusive()
isSupportUpperBoundInclusive in interface DistributionisSupportUpperBoundInclusive in class AbstractDistribution
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||