gov.sandia.cognition.statistics.distribution
Class LaplaceDistribution.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.LaplaceDistribution
                      extended by gov.sandia.cognition.statistics.distribution.LaplaceDistribution.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,LaplaceDistribution>, InvertibleCumulativeDistributionFunction<Double>, SmoothCumulativeDistributionFunction, SmoothUnivariateDistribution, UnivariateDistribution<Double>, CloneableSerializable, Serializable, Cloneable
Enclosing class:
LaplaceDistribution

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

CDF of the Laplace distribution.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class gov.sandia.cognition.statistics.distribution.LaplaceDistribution
LaplaceDistribution.CDF, LaplaceDistribution.MaximumLikelihoodEstimator, LaplaceDistribution.PDF, LaplaceDistribution.WeightedMaximumLikelihoodEstimator
 
Field Summary
 
Fields inherited from class gov.sandia.cognition.statistics.distribution.LaplaceDistribution
DEFAULT_MEAN, DEFAULT_SCALE, mean, scale
 
Constructor Summary
LaplaceDistribution.CDF()
          Creates a new instance of LaplaceDistribution.CDF
LaplaceDistribution.CDF(double mean, double scale)
          Creates a new instance of LaplaceDistribution.CDF
LaplaceDistribution.CDF(LaplaceDistribution 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.
 LaplaceDistribution.CDF getCDF()
          Gets the CDF of a scalar distribution.
 LaplaceDistribution.PDF getDerivative()
          Gets the closed-form derivative of the function.
 Double inverse(double p)
          Computes the inverse of the CDF for the give probability.
static double inverse(LaplaceDistribution laplace, double p)
          Computes the inverse of the CDF for the give probability.
 
Methods inherited from class gov.sandia.cognition.statistics.distribution.LaplaceDistribution
clone, convertFromVector, convertToVector, getEstimator, getMaxSupport, getMean, getMinSupport, getProbabilityFunction, getScale, getVariance, sample, setMean, setScale, 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

LaplaceDistribution.CDF

public LaplaceDistribution.CDF()
Creates a new instance of LaplaceDistribution.CDF


LaplaceDistribution.CDF

public LaplaceDistribution.CDF(double mean,
                               double scale)
Creates a new instance of LaplaceDistribution.CDF

Parameters:
mean - Mean of the distribution
scale - Scale factor of the distribution, must be greater than zero.

LaplaceDistribution.CDF

public LaplaceDistribution.CDF(LaplaceDistribution other)
Copy Constructor

Parameters:
other - LaplaceDistribution 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

inverse

public Double inverse(double p)
Computes the inverse of the CDF for the give probability. That is, find x=CDF.inverse(p) so that CDF(x)=p.

Specified by:
inverse in interface InvertibleCumulativeDistributionFunction<Double>
Parameters:
p - Probability to invert, must be [0,1].
Returns:
Finds the value of the CDF "x" so that CDF(x)=p.

inverse

public static double inverse(LaplaceDistribution laplace,
                             double p)
Computes the inverse of the CDF for the give probability. That is, find x=CDF.inverse(p) so that CDF(x)=p.

Parameters:
laplace - Laplace distribution to invert.
p - Probability to invert, must be [0,1].
Returns:
Finds the value of the CDF "x" so that CDF(x)=p.

getCDF

public LaplaceDistribution.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 LaplaceDistribution
Returns:
CDF of the scalar distribution.

getDerivative

public LaplaceDistribution.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