public class HyperExpDistribution extends ContinuousDistribution
Meaning: | Selecting one of \(k\) random variables that are negative-exponentially distributed with the individual parameters \(\lambda_i\) and the probabilities \(p_i\) (parallel switching in the phase model). |
---|---|
Parameters: |
|
PDF: | \(P(T=t) = f(t) = \sum\limits_{i=1}^k \lambda_i \cdot p_i \cdot exp(-\lambda_i t) \) |
DF: | \(P(T \le t) = F(t) = 1 - \sum\limits_{i=1}^k p_i \cdot exp(-\lambda_i t) \) |
Expected value: | \(E[T]= \sum\limits_{i=1}^k \frac{p_i}{\lambda_i} \) |
Variance: | \(VAR[T]= 2 \cdot \sum\limits_{i=1}^k \frac{p_i}{\lambda_i^2} - ( \sum\limits_{i=1}^k \frac{p_i}{\lambda_i} )^2 \) |
Coefficient of variation: | \(c_T= \sqrt{\frac{2 \cdot \sum\limits_{i=1}^k \frac{p_i}{\lambda_i^2}}{(\sum\limits_{i=1}^k \frac{p_i}{\lambda_i})^2}} -1 \le 1\) |
LST: | \(\phi(s) = \sum\limits_{i=1}^{k} p_i \cdot \frac{\lambda_i}{\lambda_i +s}\) |
Parser example: |
[...].Distribution = HypoExp
|
Modifier and Type | Field and Description |
---|---|
ProbabilityVector |
branchProbs |
NegExpDistribution[] |
phases |
rng
CREATE_INSTANCE_METHOD_NAME
Constructor and Description |
---|
HyperExpDistribution(double[] means,
double[] branchProbs) |
HyperExpDistribution(double[] means,
double[] branchProbs,
RandomNumberGenerator rng) |
HyperExpDistribution(double mean1,
double mean2,
double branchProb1) |
HyperExpDistribution(double mean1,
double mean2,
double branchProb1,
RandomNumberGenerator rng) |
Modifier and Type | Method and Description |
---|---|
static HyperExpDistribution |
createInstance(SimNode ownNode,
Parameters pars,
RandomNumberGenerator rng)
as required by
ReflectionConstructable |
double |
next()
Create random numbers
|
getDefaultRNG, getRandomNumberGenerator, reset
public final NegExpDistribution[] phases
public final ProbabilityVector branchProbs
public HyperExpDistribution(double[] means, double[] branchProbs, RandomNumberGenerator rng)
public HyperExpDistribution(double[] means, double[] branchProbs)
public HyperExpDistribution(double mean1, double mean2, double branchProb1, RandomNumberGenerator rng)
public HyperExpDistribution(double mean1, double mean2, double branchProb1)
public static HyperExpDistribution createInstance(SimNode ownNode, Parameters pars, RandomNumberGenerator rng)
ReflectionConstructable
public double next()
ContinuousDistribution
next
in class ContinuousDistribution