Class ParetoPD

All Implemented Interfaces:
com.imsl.stat.distributions.MethodOfMomentsInterface, PDFGradientInterface, PDFHessianInterface, Serializable, Cloneable

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

    • ParetoPD

      public ParetoPD()
      Constructor for the Pareto 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 for the scale parameter (\(x_m\gt0\)) and the shape parameter (\(k\gt0\))
    • 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 for the scale parameter (\(x_m\gt0\)) and the shape parameter (\(k\gt0\))
    • pdf

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

      The probability density function of the Pareto distribution is

      $$f\left(x;x_m,k\right)=\left\{\begin{array}{ll} \frac{kx_m^k}{x^{k+1}} & x\ge x_m, \\[3pt] 0 & x\lt x_m.\end{array}\right.$$

      where \(x_m\gt0\) is the scale parameter and \(k\gt0\) is the shape parameter.

      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 scale and shape parameters. The parameters can also be given in the form pdf(x,a,b), where a=\(x_m\) and b=\(k\) are scalars.
      Returns:
      a double, the probability density function at x and the given 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
      params - a double array specifying the scale parameter (\(x_m\gt0\)) and the shape parameter (\(k\gt0\))
      Returns:
      a double array containing the first partial derivative of the pdf with respect to 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
      params - a double array specifying the scale parameter (\(x_m\gt0\)) and the shape parameter (\(k\gt0\))
      Returns:
      a double array containing the second partial derivatives of the pdf with respect to the parameters
    • getMethodOfMomentsEstimates

      public double[] getMethodOfMomentsEstimates(double[] x)
      Returns the method-of-moments estimates given the sample data.
      Specified by:
      getMethodOfMomentsEstimates in interface com.imsl.stat.distributions.MethodOfMomentsInterface
      Parameters:
      x - a double array containing the data
      Returns:
      a double array containing method-of-moments estimates for the parameters of the Pareto distribution