ikr.simlib.distributions.continuous

## Class ParetoDistribution

• All Implemented Interfaces:
ReflectionConstructable, ReflectionConstructable3<SimNode,Parameters,RandomNumberGenerator>

public class ParetoDistribution
extends ContinuousDistribution
Pareto Distribution
Meaning: - Like the Weibull distribution, the Pareto distribution is often used to characterize Internet traffic because of its heavy tail. The superposition of on-off sources with heavy-tailed phases is known to produce self-similar traffic. minimum value $$k > 0$$ shape parameter $$\alpha > 0$$ In case $$\alpha > 2$$ this distribution can also be described with parameters mean value $$\mu$$ and coefficient of variation $$c$$: $$\alpha = 1+ \frac{\sqrt{1+c^2}}{c}$$ $$k = \frac{1}{ \frac{c}{\sqrt{1+c^2}} +1 } \cdot \mu$$ $$P(T=t) = f(t) = \frac{\alpha \cdot k^{\alpha}}{t^{\alpha +1}} \mbox{ for } t \ge k$$ $$P(T \le t) = F(t) = 1 - (\frac{k}{t})^{\alpha} \mbox{ for } t \ge k$$ $$E[T]= \begin{cases} \frac{\alpha}{\alpha -1} \cdot k &\mbox{ for } \alpha > 1 \\ \infty &\mbox{ for } \alpha \le 1 \end{cases}$$ $$VAR[T]= \begin{cases} (\frac{\alpha}{\alpha -2} - (\frac{\alpha}{\alpha -1})^2) \cdot k^2 &\mbox{ for } \alpha > 2 \\ \infty &\mbox{ for } \alpha \le 2 \end{cases}$$ $$c_T= \frac{1}{\sqrt{(\alpha -2) \cdot \alpha}} \mbox{ for } \alpha > 2$$  [...].Distribution = Pareto [...].Distribution.Alpha1 = 2.2 [...].Distribution.MinValue = 1.0  or with any of the following combinations: (Mean OR MinValue) AND (CoefficientOfVariation OR Alpha), e.g.,  [...].Distribution.Mean = 1.83 [...].Distribution.CoefficientOfVariation = 1.51 
• ### Field Summary

Fields
Modifier and Type Field and Description
double alphaReciprocal
double minValue
• ### Fields inherited from class ikr.simlib.distributions.Distribution

rng
• ### Fields inherited from interface ikr.simlib.parameters.reflection.ReflectionConstructable

CREATE_INSTANCE_METHOD_NAME
• ### Constructor Summary

Constructors
Constructor and Description
ParetoDistribution(double alpha, double minValue)
ParetoDistribution(double alpha, double minValue, RandomNumberGenerator rng)
• ### Method Summary

Methods
Modifier and Type Method and Description
static ParetoDistribution createInstance(SimNode ownNode, Parameters pars, RandomNumberGenerator rng)
double next()
Create random numbers
• ### Methods inherited from class ikr.simlib.distributions.Distribution

getDefaultRNG, getRandomNumberGenerator, reset
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Field Detail

• #### alphaReciprocal

public final double alphaReciprocal
• #### minValue

public final double minValue
• ### Constructor Detail

• #### ParetoDistribution

public ParetoDistribution(double alpha,
double minValue,
RandomNumberGenerator rng)
• #### ParetoDistribution

public ParetoDistribution(double alpha,
double minValue)
• ### Method Detail

• #### createInstance

public static ParetoDistribution createInstance(SimNode ownNode,
Parameters pars,
RandomNumberGenerator rng)
• #### next

public double next()
Description copied from class: ContinuousDistribution
Create random numbers
Specified by:
next in class ContinuousDistribution