org.apache.commons.math.distribution

## Class ExponentialDistributionImpl

• ### Field Summary

Fields
Modifier and Type Field and Description
`static double` `DEFAULT_INVERSE_ABSOLUTE_ACCURACY`
Default inverse cumulative probability accuracy
• ### Constructor Summary

Constructors
Constructor and Description
`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

All Methods
Modifier and Type Method and Description
`double` `cumulativeProbability(double x)`
For this distribution, X, this method returns P(X < x).
`double` `density(double x)`
Return the probability density for a particular point.
`double` `density(java.lang.Double x)`
Deprecated.
- use density(double)
`double` `getMean()`
Access the mean.
`double` `getNumericalMean()`
Returns the mean of the distribution.
`double` `getNumericalVariance()`
Returns the variance of the distribution.
`double` `getSupportLowerBound()`
Returns the lower bound of the support for the distribution.
`double` `getSupportUpperBound()`
Returns the upper bound of the support for the distribution.
`double` `inverseCumulativeProbability(double p)`
For this distribution, X, this method returns the critical point x, such that P(X < x) = `p`.
`double` `sample()`
Generates a random value sampled from this distribution.
`void` `setMean(double mean)`
Deprecated.
as of 2.1 (class will become immutable in 3.0)
• ### Methods inherited from class org.apache.commons.math.distribution.AbstractContinuousDistribution

`reseedRandomGenerator, sample`
• ### Methods inherited from class org.apache.commons.math.distribution.AbstractDistribution

`cumulativeProbability`
• ### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
• ### Methods inherited from interface org.apache.commons.math.distribution.Distribution

`cumulativeProbability`
• ### Field Detail

• #### DEFAULT_INVERSE_ABSOLUTE_ACCURACY

`public static final double DEFAULT_INVERSE_ABSOLUTE_ACCURACY`
Default inverse cumulative probability accuracy
Since:
2.1
See Also:
Constant Field Values
• ### Constructor Detail

• #### ExponentialDistributionImpl

`public ExponentialDistributionImpl(double mean)`
Create a exponential distribution with the given mean.
Parameters:
`mean` - mean of this distribution.
• #### ExponentialDistributionImpl

```public ExponentialDistributionImpl(double mean,
double inverseCumAccuracy)```
Create a exponential distribution with the given mean.
Parameters:
`mean` - mean of this distribution.
`inverseCumAccuracy` - the maximum absolute error in inverse cumulative probability estimates (defaults to `DEFAULT_INVERSE_ABSOLUTE_ACCURACY`)
Since:
2.1
• ### Method Detail

• #### setMean

```@Deprecated
public void setMean(double mean)```
Deprecated. as of 2.1 (class will become immutable in 3.0)
Modify the mean.
Specified by:
`setMean` in interface `ExponentialDistribution`
Parameters:
`mean` - the new mean.
Throws:
`java.lang.IllegalArgumentException` - if `mean` is not positive.
• #### getMean

`public double getMean()`
Access the mean.
Specified by:
`getMean` in interface `ExponentialDistribution`
Returns:
the mean.
• #### density

```@Deprecated
public double density(java.lang.Double x)```
Deprecated. - use density(double)
Return the probability density for a particular point.
Specified by:
`density` in interface `ExponentialDistribution`
Specified by:
`density` in interface `HasDensity<java.lang.Double>`
Parameters:
`x` - The point at which the density should be computed.
Returns:
The pdf at point x.
• #### density

`public double density(double x)`
Return the probability density for a particular point.
Overrides:
`density` in class `AbstractContinuousDistribution`
Parameters:
`x` - The point at which the density should be computed.
Returns:
The pdf at point x.
Since:
2.1
• #### cumulativeProbability

```public double cumulativeProbability(double x)
throws MathException```
For this distribution, X, this method returns P(X < x). The implementation of this method is based on:
Specified by:
`cumulativeProbability` in interface `Distribution`
Parameters:
`x` - the value at which the CDF is evaluated.
Returns:
CDF for this distribution.
Throws:
`MathException` - if the cumulative probability can not be computed due to convergence or other numerical errors.
• #### inverseCumulativeProbability

```public double inverseCumulativeProbability(double p)
throws MathException```
For this distribution, X, this method returns the critical point x, such that P(X < x) = `p`.

Returns 0 for p=0 and `Double.POSITIVE_INFINITY` for p=1.

Specified by:
`inverseCumulativeProbability` in interface `ContinuousDistribution`
Overrides:
`inverseCumulativeProbability` in class `AbstractContinuousDistribution`
Parameters:
`p` - the desired probability
Returns:
x, such that P(X < x) = `p`
Throws:
`MathException` - if the inverse cumulative probability can not be computed due to convergence or other numerical errors.
`java.lang.IllegalArgumentException` - if p < 0 or p > 1.
• #### sample

```public double sample()
throws MathException```
Generates a random value sampled from this distribution.

Algorithm Description: Uses the Inversion Method to generate exponentially distributed random values from uniform deviates.

Overrides:
`sample` in class `AbstractContinuousDistribution`
Returns:
random value
Throws:
`MathException` - if an error occurs generating the random value
Since:
2.2
• #### getSupportLowerBound

`public double getSupportLowerBound()`
Returns the lower bound of the support for the distribution. The lower bound of the support is always 0, regardless of the mean.
Returns:
lower bound of the support (always 0)
Since:
2.2
• #### getSupportUpperBound

`public double getSupportUpperBound()`
Returns the upper bound of the support for the distribution. The upper bound of the support is always positive infinity, regardless of the mean.
Returns:
upper bound of the support (always Double.POSITIVE_INFINITY)
Since:
2.2
• #### getNumericalMean

`public double getNumericalMean()`
Returns the mean of the distribution. For mean parameter `k`, the mean is `k`
Returns:
the mean
Since:
2.2
• #### getNumericalVariance

`public double getNumericalVariance()`
Returns the variance of the distribution. For mean parameter `k`, the variance is `k^2`
Returns:
the variance
Since:
2.2

"Copyright © 2010 - 2018 Adobe Systems Incorporated. All Rights Reserved"