Class GeneralizedParetoDistribution

  • All Implemented Interfaces:
    ProbabilityDistribution<Double>

    public class GeneralizedParetoDistribution
    extends Object
    implements ProbabilityDistribution<Double>
    Calculates the Pareto distribution.

    The generalized Pareto distribution is a family of power law probability distributions with location parameter $\mu$, shape parameter $\xi$ and scale parameter $\sigma$, where $$ \begin{eqnarray*} \mu&\in&\Re,\\ \xi&\in&\Re,\\ \sigma&>&0 \end{eqnarray*} $$ and with support $$ \begin{eqnarray*} x\geq\mu\quad\quad\quad(\xi\geq 0)\\ \mu\leq x\leq\mu-\frac{\sigma}{\xi}\quad(\xi<0) \end{eqnarray*} $$ The cdf is given by: $$ \begin{align*} F(z)&=1-\left(1 + \xi z\right)^{-\frac{1}{\xi}}\\ z&=\frac{x-\mu}{\sigma} \end{align*} $$ and the pdf is given by: $$ \begin{align*} f(z)&=\frac{\left(1+\xi z\right)^{-\left(\frac{1}{\xi} + 1\right)}}{\sigma}\\ z&=\frac{x-\mu}{\sigma} \end{align*} $$ Given a uniform random number variable $U$ drawn from the interval $(0,1]$, a Pareto-distributed random variable with parameters $\mu$, $\sigma$ and $\xi$ is given by $$ \begin{align*} X=\mu + \frac{\sigma\left(U^{-\xi}-1\right)}{\xi}\sim GPD(\mu,\sigma,\xi) \end{align*} $$

    • Constructor Detail

      • GeneralizedParetoDistribution

        public GeneralizedParetoDistribution​(double mu,
                                             double sigma,
                                             double ksi)
        Creates an instance.
        Parameters:
        mu - The location parameter
        sigma - The scale parameter, not negative or zero
        ksi - The shape parameter, not zero
      • GeneralizedParetoDistribution

        public GeneralizedParetoDistribution​(double mu,
                                             double sigma,
                                             double ksi,
                                             RandomEngine engine)
        Creates an instance.
        Parameters:
        mu - The location parameter
        sigma - The scale parameter
        ksi - The shape parameter
        engine - A uniform random number generator, not null
    • Method Detail

      • getMu

        public double getMu()
        Gets the location parameter.
        Returns:
        The location parameter
      • getSigma

        public double getSigma()
        Gets the scale parameter.
        Returns:
        The scale parameter
      • getKsi

        public double getKsi()
        Gets the shape parameter.
        Returns:
        The shape parameter
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object