|
SSJ V. 2.6. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object umontreal.iro.lecuyer.probdist.ContinuousDistribution umontreal.iro.lecuyer.probdist.HypoExponentialDist
public class HypoExponentialDist
This class implements the hypoexponential distribution, also called the generalized Erlang distribution. Let the Xj, j = 1,…, k, be k independent exponential random variables with different rates λj, i.e. assume that λj≠λi for i≠j. Then the sum ∑j=1kXj is called a hypoexponential random variable.
Let the k×k upper triangular bidiagonal matrix
with λj the rates of the k exponential random variables; then the cumulative complementary probability of the hypoexponential distribution is given by i.e., it is the sum of the elements of the first row of matrix eAx. The density of the hypoexponential distribution is
See the class HypoExponentialDistQuick
for alternative formulae
for the probabilities.
Field Summary |
---|
Fields inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution |
---|
decPrec |
Constructor Summary | |
---|---|
HypoExponentialDist(double[] lambda)
Constructs a HypoExponentialDist object, with rates λi = lambda[i - 1], i = 1,…, k. |
Method Summary | |
---|---|
double |
barF(double x)
Returns the complementary distribution function. |
static double |
barF(double[] lambda,
double x)
Computes the complementary distribution bar(F)(x), with λi = lambda[i - 1], i = 1,…, k. |
double |
cdf(double x)
Returns the distribution function F(x). |
static double |
cdf(double[] lambda,
double x)
Computes the distribution function F(x), with λi = lambda[i - 1], i = 1,…, k. |
static double |
cdf2(double[] lambda,
double x)
Computes the distribution function F(x), with λi = lambda[i - 1], i = 1,…, k. |
double |
density(double x)
Returns f (x), the density evaluated at x. |
static double |
density(double[] lambda,
double x)
Computes the density function f (x), with λi = lambda[i - 1], i = 1,…, k. |
double[] |
getLambda()
Returns the values λi for this object. |
double |
getMean()
Returns the mean. |
static double |
getMean(double[] lambda)
Returns the mean, E[X] = ∑i=1k1/λi, of the hypoexponential distribution with rates λi = lambda[i - 1], i = 1,…, k. |
double[] |
getParams()
Same as getLambda . |
double |
getStandardDeviation()
Returns the standard deviation. |
static double |
getStandardDeviation(double[] lambda)
Returns the standard deviation of the hypoexponential distribution with rates λi = lambda[i - 1], i = 1,…, k. |
double |
getVariance()
Returns the variance. |
static double |
getVariance(double[] lambda)
Returns the variance, Var[X] = ∑i=1k1/λi2, of the hypoexponential distribution with rates λi = lambda[i - 1], i = 1,…, k. |
double |
inverseF(double u)
Returns the inverse distribution function x = F-1(u). |
static double |
inverseF(double[] lambda,
double u)
Computes the inverse distribution function F-1(u), with λi = lambda[i - 1], i = 1,…, k. |
void |
setLambda(double[] lambda)
Sets the values λi =lambda[i - 1], i = 1,…, k for this object. |
String |
toString()
|
Methods inherited from class umontreal.iro.lecuyer.probdist.ContinuousDistribution |
---|
getXinf, getXsup, inverseBisection, inverseBrent, setXinf, setXsup |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public HypoExponentialDist(double[] lambda)
lambda
- rates of the hypoexponential distributionMethod Detail |
---|
public double density(double x)
ContinuousDistribution
density
in class ContinuousDistribution
x
- value at which the density is evaluated
public double cdf(double x)
Distribution
x
- value at which the distribution function is evaluated
public double barF(double x)
ContinuousDistribution
barF
in interface Distribution
barF
in class ContinuousDistribution
x
- value at which the complementary distribution function is evaluated
public double inverseF(double u)
ContinuousDistribution
inverseF
in interface Distribution
inverseF
in class ContinuousDistribution
u
- value at which the inverse distribution function is evaluated
public double getMean()
ContinuousDistribution
getMean
in interface Distribution
getMean
in class ContinuousDistribution
public double getVariance()
ContinuousDistribution
getVariance
in interface Distribution
getVariance
in class ContinuousDistribution
public double getStandardDeviation()
ContinuousDistribution
getStandardDeviation
in interface Distribution
getStandardDeviation
in class ContinuousDistribution
public static double density(double[] lambda, double x)
lambda
- rates of the hypoexponential distributionx
- value at which the density is evaluated
public static double cdf(double[] lambda, double x)
lambda
- rates of the hypoexponential distributionx
- value at which the distribution is evaluated
public static double cdf2(double[] lambda, double x)
lambda
- rates of the hypoexponential distributionx
- value at which the distribution is evaluated
public static double barF(double[] lambda, double x)
lambda
- rates of the hypoexponential distributionx
- value at which the complementary distribution is evaluated
public static double inverseF(double[] lambda, double u)
lambda
- rates of the hypoexponential distributionu
- value at which the inverse distribution is evaluated
public static double getMean(double[] lambda)
lambda
- rates of the hypoexponential distribution
public static double getVariance(double[] lambda)
lambda
- rates of the hypoexponential distribution
public static double getStandardDeviation(double[] lambda)
lambda
- rates of the hypoexponential distribution
public double[] getLambda()
public void setLambda(double[] lambda)
public double[] getParams()
getLambda
.
public String toString()
toString
in class Object
|
SSJ V. 2.6. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |