Class ContinuousUniformPD

java.lang.Object
com.imsl.stat.distributions.ProbabilityDistribution
com.imsl.stat.distributions.ContinuousUniformPD
All Implemented Interfaces:
ClosedFormMaximumLikelihoodInterface, com.imsl.stat.distributions.MethodOfMomentsInterface, PDFGradientInterface, PDFHessianInterface, Serializable, Cloneable

public class ContinuousUniformPD extends ProbabilityDistribution implements Serializable, Cloneable, PDFHessianInterface, ClosedFormMaximumLikelihoodInterface, com.imsl.stat.distributions.MethodOfMomentsInterface
The continuous uniform probability distribution.
See Also:
  • Constructor Details

    • ContinuousUniformPD

      public ContinuousUniformPD()
      Constructs a continuous uniform probability distribution.
  • Method Details

    • getParameterLowerBounds

      public double[] getParameterLowerBounds()
      Returns the lower bounds of the parameters.
      Specified by:
      getParameterLowerBounds in class ProbabilityDistribution
      Returns:
      a double array of length 2 containing the lower bounds (\( -\infty \lt a \lt b \lt \infty \))
    • getParameterUpperBounds

      public double[] getParameterUpperBounds()
      Returns the upper bounds of the parameters.
      Specified by:
      getParameterUpperBounds in class ProbabilityDistribution
      Returns:
      a double array of length 2 containing the upper bounds (\( -\infty \lt a \lt b \lt \infty \))
    • pdf

      public double pdf(double x, double... params)
      Returns the value of the continuous uniform probability density function.

      The probability density function of the continuous uniform distribution is $$f(x|a,b)=\left\{\begin{array}{lll}\frac{1}{b-a}, & \mbox{for} & a\le x\le b \\ 0, & \mbox{for} & x\lt a \; \mbox{or} \; x\gt b \end{array}\right. $$ where \( -\infty \lt a \lt b \lt \infty \).

      Specified by:
      pdf in class ProbabilityDistribution
      Parameters:
      x - a double, the value (quantile) at which to evaluate the pdf
      params - a double array containing the parameters a and b. The parameters can also be given in the form pdf(x,a,b), where a and b are scalars.
      Returns:
      a double, the probability density at x given the parameter values
    • getPDFGradient

      public double[] getPDFGradient(double x, double... params)
      Returns the analytic gradient of the pdf.
      Specified by:
      getPDFGradient in interface PDFGradientInterface
      Parameters:
      x - a double, the value at which to evaluate the gradient. The function is undefined when x = a or x = b.
      params - a double array containing values of the parameters, a and b. The parameters can also be given in the form pdf(x,a,b), where a and b are scalars.
      Returns:
      a double array containing the first partial derivative of the pdf given the parameters
    • getPDFHessian

      public double[][] getPDFHessian(double x, double... params)
      Returns the analytic Hessian of the pdf.
      Specified by:
      getPDFHessian in interface PDFHessianInterface
      Parameters:
      x - a double,the value at which to evaluate the Hessian. The function is undefined when x = a or x = b.
      params - a double array containing values of the parameters, a and b. The parameters can also be given in the form pdf(x,a,b), where a and b are scalars.
      Returns:
      a double matrix containing the second partial derivatives of pdf with respect to the parameters
    • getClosedFormMLE

      public double[] getClosedFormMLE(double[] x)
      Returns the closed form maximum likelihood estimates.

      For the continuous uniform distribution, the maximum likelihood estimates are the minimum and maximum of the sample data.

      Specified by:
      getClosedFormMLE in interface ClosedFormMaximumLikelihoodInterface
      Parameters:
      x - a double array containing the data
      Returns:
      a double array containing the closed form estimates
    • getClosedFormMlStandardError

      public double[] getClosedFormMlStandardError(double[] x)
      Returns the standard error based on the closed form maximum likelihood estimates.
      Specified by:
      getClosedFormMlStandardError in interface ClosedFormMaximumLikelihoodInterface
      Parameters:
      x - a double array containing the data
      Returns:
      a double array containing the standard errors