ikr.simlib.distributions.continuous

Class HypoExpDistribution

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

public class HypoExpDistribution
extends ContinuousDistribution
Hypoexponential Distribution to the Order of k

Hypoexponential distribution to the order of k
Meaning: Generalization of the Erlang k distribution (serial switching of $$k$$ phases with negative-exponentially distributed durations with individual parameters $$\lambda_i$$ in the phase model). order $$k > 0$$ rates $$\lambda_i$$ or mean values $$m_i$$ of the individual phases $$(i = 1, \dots, k)$$ $$P(T=t) = f(t) = g_1(t) \otimes ... \otimes g_k(t)$$ with $$g_i(t) = \lambda_i \cdot exp(-\lambda_i t)$$ $$E[T]= \sum\limits_{i=1}^k \frac{1}{\lambda_i}$$ $$VAR[T]= \sum\limits_{i=1}^k \frac{1}{\lambda_i^2}$$ $$c_T= \frac{\sqrt{\sum\limits_{i=1}^k \frac{1}{\lambda_i^2}}}{\sum\limits_{i=1}^k \frac{1}{\lambda_i}} \le 1$$ $$\phi(s) = \prod\limits_{i=1}^{k} \frac{\lambda_i}{\lambda_i +s}$$  [...].Distribution = HypoExp [...].Distribution.Order = 2 [...].Distribution.Means = [ 2.5 , 8] 
• Field Summary

Fields
Modifier and Type Field and Description
NegExpDistribution[] phases
• 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
HypoExpDistribution(double[] means)
HypoExpDistribution(double[] means, RandomNumberGenerator rng)
HypoExpDistribution(double mean1, double mean2)
HypoExpDistribution(double mean1, double mean2, RandomNumberGenerator rng)
2nd order
HypoExpDistribution(int nrOfPhases)
HypoExpDistribution(int nrOfPhases, RandomNumberGenerator rng)
• Method Summary

Methods
Modifier and Type Method and Description
static HypoExpDistribution 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

• phases

public final NegExpDistribution[] phases
• Constructor Detail

• HypoExpDistribution

public HypoExpDistribution(int nrOfPhases,
RandomNumberGenerator rng)
• HypoExpDistribution

public HypoExpDistribution(int nrOfPhases)
• HypoExpDistribution

public HypoExpDistribution(double[] means,
RandomNumberGenerator rng)
• HypoExpDistribution

public HypoExpDistribution(double[] means)
• HypoExpDistribution

public HypoExpDistribution(double mean1,
double mean2,
RandomNumberGenerator rng)
2nd order
• HypoExpDistribution

public HypoExpDistribution(double mean1,
double mean2)
• Method Detail

• createInstance

public static HypoExpDistribution 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