sim.util.distribution
Class Exponential

java.lang.Object
  extended by sim.util.distribution.AbstractDistribution
      extended by sim.util.distribution.AbstractContinousDistribution
          extended by sim.util.distribution.Exponential
All Implemented Interfaces:
java.io.Serializable

public class Exponential
extends AbstractContinousDistribution

Exponential Distribution (aka Negative Exponential Distribution); See the math definition animated definition.

p(x) = lambda*exp(-x*lambda) for x >= 0, lambda > 0.

Instance methods operate on a user supplied uniform random number generator; they are unsynchronized.

Static methods operate on a default uniform random number generator; they are synchronized.

See Also:
Serialized Form

Field Summary
protected  double lambda
           
 
Fields inherited from class sim.util.distribution.AbstractDistribution
randomGenerator
 
Constructor Summary
Exponential(double lambda, MersenneTwisterFast randomGenerator)
          Constructs a Negative Exponential distribution.
 
Method Summary
 double cdf(double x)
          Returns the cumulative distribution function.
 double nextDouble()
          Returns a random number from the distribution.
 double nextDouble(double lambda)
          Returns a random number from the distribution; bypasses the internal state.
 double pdf(double x)
          Returns the probability distribution function.
 void setState(double lambda)
          Sets the mean.
 java.lang.String toString()
          Returns a String representation of the receiver.
 
Methods inherited from class sim.util.distribution.AbstractDistribution
apply, apply, getRandomGenerator, nextInt, setRandomGenerator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

lambda

protected double lambda
Constructor Detail

Exponential

public Exponential(double lambda,
                   MersenneTwisterFast randomGenerator)
Constructs a Negative Exponential distribution.

Method Detail

cdf

public double cdf(double x)
Returns the cumulative distribution function.


nextDouble

public double nextDouble()
Returns a random number from the distribution.

Specified by:
nextDouble in class AbstractDistribution

nextDouble

public double nextDouble(double lambda)
Returns a random number from the distribution; bypasses the internal state.


pdf

public double pdf(double x)
Returns the probability distribution function.


setState

public void setState(double lambda)
Sets the mean.


toString

public java.lang.String toString()
Returns a String representation of the receiver.

Overrides:
toString in class java.lang.Object