gov.sandia.cognition.statistics.distribution
Class ExponentialDistribution.CDF

java.lang.Object
  extended by gov.sandia.cognition.util.AbstractCloneableSerializable
      extended by gov.sandia.cognition.statistics.AbstractDistribution<NumberType>
          extended by gov.sandia.cognition.statistics.AbstractClosedFormUnivariateDistribution<Double>
              extended by gov.sandia.cognition.statistics.AbstractClosedFormSmoothUnivariateDistribution
                  extended by gov.sandia.cognition.statistics.distribution.ExponentialDistribution
                      extended by gov.sandia.cognition.statistics.distribution.ExponentialDistribution.CDF
All Implemented Interfaces:
Evaluator<Double,Double>, ClosedFormDifferentiableEvaluator<Double,Double,Double>, DifferentiableEvaluator<Double,Double,Double>, Vectorizable, ScalarFunction<Double>, UnivariateScalarFunction, ClosedFormComputableDistribution<Double>, ClosedFormCumulativeDistributionFunction<Double>, ClosedFormDistribution<Double>, ClosedFormUnivariateDistribution<Double>, ComputableDistribution<Double>, CumulativeDistributionFunction<Double>, Distribution<Double>, DistributionWithMean<Double>, EstimableDistribution<Double,ExponentialDistribution>, InvertibleCumulativeDistributionFunction<Double>, SmoothCumulativeDistributionFunction, SmoothUnivariateDistribution, UnivariateDistribution<Double>, CloneableSerializable, Serializable, Cloneable
Enclosing class:
ExponentialDistribution

public static class ExponentialDistribution.CDF
extends ExponentialDistribution
implements SmoothCumulativeDistributionFunction, InvertibleCumulativeDistributionFunction<Double>

CDF of the ExponentialDistribution.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class gov.sandia.cognition.statistics.distribution.ExponentialDistribution
ExponentialDistribution.CDF, ExponentialDistribution.MaximumLikelihoodEstimator, ExponentialDistribution.PDF, ExponentialDistribution.WeightedMaximumLikelihoodEstimator
 
Field Summary
 
Fields inherited from class gov.sandia.cognition.statistics.distribution.ExponentialDistribution
DEFAULT_RATE, rate
 
Constructor Summary
ExponentialDistribution.CDF()
          Default constructor.
ExponentialDistribution.CDF(double rate)
          Creates a new instance of CDF
ExponentialDistribution.CDF(ExponentialDistribution other)
          Copy constructor
 
Method Summary
 Double differentiate(Double input)
          Differentiates the output with respect to the input
 double evaluate(double input)
          Produces a double output for the given double input
 Double evaluate(Double input)
          Evaluates the function on the given input and returns the output.
 double evaluateAsDouble(Double input)
          Evaluates the scalar function as a double.
 ExponentialDistribution.CDF getCDF()
          Gets the CDF of a scalar distribution.
 ExponentialDistribution.PDF getDerivative()
          Gets the closed-form derivative of the function.
 Double inverse(double probability)
          Computes the inverse of the CDF for the given probability.
 
Methods inherited from class gov.sandia.cognition.statistics.distribution.ExponentialDistribution
clone, convertFromVector, convertToVector, getEstimator, getMaxSupport, getMean, getMinSupport, getProbabilityFunction, getRate, getVariance, sample, setRate, toString
 
Methods inherited from class gov.sandia.cognition.statistics.AbstractDistribution
sample
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface gov.sandia.cognition.statistics.SmoothUnivariateDistribution
getMean, getProbabilityFunction
 
Methods inherited from interface gov.sandia.cognition.statistics.UnivariateDistribution
getMaxSupport, getMinSupport, getVariance
 
Methods inherited from interface gov.sandia.cognition.statistics.Distribution
sample, sample
 
Methods inherited from interface gov.sandia.cognition.math.matrix.Vectorizable
clone, convertFromVector, convertToVector
 

Constructor Detail

ExponentialDistribution.CDF

public ExponentialDistribution.CDF()
Default constructor.


ExponentialDistribution.CDF

public ExponentialDistribution.CDF(double rate)
Creates a new instance of CDF

Parameters:
rate - Rate, or inverse scale, of the distribution, must be greater than zero.

ExponentialDistribution.CDF

public ExponentialDistribution.CDF(ExponentialDistribution other)
Copy constructor

Parameters:
other - ExponentialDistribution to copy.
Method Detail

evaluate

public Double evaluate(Double input)
Description copied from interface: Evaluator
Evaluates the function on the given input and returns the output.

Specified by:
evaluate in interface Evaluator<Double,Double>
Parameters:
input - The input to evaluate.
Returns:
The output produced by evaluating the input.

evaluateAsDouble

public double evaluateAsDouble(Double input)
Description copied from interface: ScalarFunction
Evaluates the scalar function as a double.

Specified by:
evaluateAsDouble in interface ScalarFunction<Double>
Parameters:
input - The input value.
Returns:
The scalar output calculated from the given input.

evaluate

public double evaluate(double input)
Description copied from interface: UnivariateScalarFunction
Produces a double output for the given double input

Specified by:
evaluate in interface UnivariateScalarFunction
Parameters:
input - Input to the Evaluator
Returns:
output at the given input

getCDF

public ExponentialDistribution.CDF getCDF()
Description copied from interface: UnivariateDistribution
Gets the CDF of a scalar distribution.

Specified by:
getCDF in interface ClosedFormUnivariateDistribution<Double>
Specified by:
getCDF in interface SmoothUnivariateDistribution
Specified by:
getCDF in interface UnivariateDistribution<Double>
Overrides:
getCDF in class ExponentialDistribution
Returns:
CDF of the scalar distribution.

getDerivative

public ExponentialDistribution.PDF getDerivative()
Description copied from interface: ClosedFormDifferentiableEvaluator
Gets the closed-form derivative of the function.

Specified by:
getDerivative in interface ClosedFormDifferentiableEvaluator<Double,Double,Double>
Specified by:
getDerivative in interface SmoothCumulativeDistributionFunction
Returns:
Closed-form derivative of the function.

differentiate

public Double differentiate(Double input)
Description copied from interface: DifferentiableEvaluator
Differentiates the output with respect to the input

Specified by:
differentiate in interface DifferentiableEvaluator<Double,Double,Double>
Parameters:
input - Input about which to compute the derivative
Returns:
Derivative of the output with respect to the given input

inverse

public Double inverse(double probability)
Description copied from interface: InvertibleCumulativeDistributionFunction
Computes the inverse of the CDF for the given probability. That is, compute the value "x" such that p=CDF(x).

Specified by:
inverse in interface InvertibleCumulativeDistributionFunction<Double>
Parameters:
probability - Probability to invert.
Returns:
Inverse of the CDF for the given probability.