SSJ
V. 1.2.5.

## umontreal.iro.lecuyer.probdist Class UniformIntDist

```java.lang.Object
umontreal.iro.lecuyer.probdist.DiscreteDistributionInt
umontreal.iro.lecuyer.probdist.UniformIntDist
```
All Implemented Interfaces:
Distribution

`public class UniformIntDistextends DiscreteDistributionInt`

Extends the class `DiscreteDistributionInt` for the discrete uniform distribution over the range [i, j]. Its mass function is given by

p(x) = 1/(j - i + 1)         for x = i, i + 1,…, j

and 0 elsewhere. The distribution function is

F(x) = (floor(x) - i + 1)/(j - i + 1)         for i <= x <= j

and its inverse is

F-1(u) = i + (j - i + 1)u        for 0 <= u <= 1.

Field Summary

Fields inherited from class umontreal.iro.lecuyer.probdist.DiscreteDistributionInt
`EPSILON`

Constructor Summary
```UniformIntDist(int i, int j)```
Constructs a discrete uniform distribution over the interval [i, j].

Method Summary
` double` `barF(int x)`
Returns bar(F)(x), the complementary distribution function.
`static double` ```barF(int i, int j, int x)```
Computes the discrete uniform complementary distribution function bar(F)(x).
` double` `cdf(int x)`
Returns the distribution function F evaluated at x (see).
`static double` ```cdf(int i, int j, int x)```
Computes the discrete uniform distribution function as in.
` int` `getI()`
Returns the parameter i.
`static UniformIntDist` ```getInstanceFromMLE(int[] x, int n)```
Creates a new instance of a discrete uniform distribution over integers with parameters i and j estimated using the maximum likelihood method based on the n observations in table x[k], k = 0, 1,…, n - 1.
` int` `getJ()`
Returns the parameter j.
`static double[]` ```getMaximumLikelihoodEstimate(int[] x, int n)```
Estimates and returns the parameters [hat(ı), hat(j)] of the uniform distribution over integers using the maximum likelihood method based on the n observations in table x[k], k = 0, 1,…, n - 1.
` double` `getMean()`
Returns the mean of the distribution function.
`static double` ```getMean(int i, int j)```
Computes and returns the mean E[X] = (i + j)/2 of the discrete uniform distribution.
` double` `getStandardDeviation()`
Returns the standard deviation of the distribution function.
`static double` ```getStandardDeviation(int i, int j)```
Computes and returns the standard deviation of the discrete uniform distribution.
` double` `getVariance()`
Returns the variance of the distribution function.
`static double` ```getVariance(int i, int j)```
Computes and returns the variance Var[X] = [(j - i + 1)2 -1]/12 of the discrete uniform distribution.
`static int` ```inverseF(int i, int j, double u)```
Computes the inverse of the discrete uniform distribution function.
` int` `inverseFInt(double u)`
Returns the inverse distribution function F-1(u), where 0 <= u <= 1.
` double` `prob(int x)`
Returns p(x), the probability of x, which should be a real number in the interval [0, 1].
`static double` ```prob(int i, int j, int x)```
Computes the discrete uniform density function f (x).
` void` ```setParams(int i, int j)```
Sets the parameters i and j for this object.

Methods inherited from class umontreal.iro.lecuyer.probdist.DiscreteDistributionInt
`barF, cdf, inverseF`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### UniformIntDist

```public UniformIntDist(int i,
int j)```
Constructs a discrete uniform distribution over the interval [i, j].

Method Detail

### prob

`public double prob(int x)`
Description copied from class: `DiscreteDistributionInt`
Returns p(x), the probability of x, which should be a real number in the interval [0, 1].

Specified by:
`prob` in class `DiscreteDistributionInt`
Parameters:
`x` - value at which the mass function must be evaluated
Returns:
the mass function evaluated at x

### cdf

`public double cdf(int x)`
Description copied from class: `DiscreteDistributionInt`
Returns the distribution function F evaluated at x (see).

Specified by:
`cdf` in class `DiscreteDistributionInt`
Parameters:
`x` - value at which the distribution function must be evaluated
Returns:
the distribution function evaluated at x

### barF

`public double barF(int x)`
Description copied from class: `DiscreteDistributionInt`
Returns bar(F)(x), the complementary distribution function.

Overrides:
`barF` in class `DiscreteDistributionInt`
Parameters:
`x` - value at which the complementary distribution function must be evaluated
Returns:
the complementary distribution function evaluated at x

### inverseFInt

`public int inverseFInt(double u)`
Description copied from class: `DiscreteDistributionInt`
Returns the inverse distribution function F-1(u), where 0 <= u <= 1. The default implementation uses binary search.

Overrides:
`inverseFInt` in class `DiscreteDistributionInt`
Parameters:
`u` - value in the interval (0, 1) for which the inverse distribution function is evaluated
Returns:
the inverse distribution function evaluated at u

### getMean

`public double getMean()`
Description copied from interface: `Distribution`
Returns the mean of the distribution function.

### getVariance

`public double getVariance()`
Description copied from interface: `Distribution`
Returns the variance of the distribution function.

### getStandardDeviation

`public double getStandardDeviation()`
Description copied from interface: `Distribution`
Returns the standard deviation of the distribution function.

### prob

```public static double prob(int i,
int j,
int x)```
Computes the discrete uniform density function f (x).

### cdf

```public static double cdf(int i,
int j,
int x)```
Computes the discrete uniform distribution function as in.

### barF

```public static double barF(int i,
int j,
int x)```
Computes the discrete uniform complementary distribution function bar(F)(x).

### inverseF

```public static int inverseF(int i,
int j,
double u)```
Computes the inverse of the discrete uniform distribution function.

### getInstanceFromMLE

```public static UniformIntDist getInstanceFromMLE(int[] x,
int n)```
Creates a new instance of a discrete uniform distribution over integers with parameters i and j estimated using the maximum likelihood method based on the n observations in table x[k], k = 0, 1,…, n - 1.

Parameters:
`x` - the list of observations to use to evaluate parameters
`n` - the number of observations to use to evaluate parameters

### getMaximumLikelihoodEstimate

```public static double[] getMaximumLikelihoodEstimate(int[] x,
int n)```
Estimates and returns the parameters [hat(ı), hat(j)] of the uniform distribution over integers using the maximum likelihood method based on the n observations in table x[k], k = 0, 1,…, n - 1.

Parameters:
`x` - the list of observations used to evaluate parameters
`n` - the number of observations used to evaluate parameters
Returns:
returns the parameters [hat(ı), hat(j)]

### getMean

```public static double getMean(int i,
int j)```
Computes and returns the mean E[X] = (i + j)/2 of the discrete uniform distribution.

Returns:
the mean of the discrete uniform distribution

### getVariance

```public static double getVariance(int i,
int j)```
Computes and returns the variance Var[X] = [(j - i + 1)2 -1]/12 of the discrete uniform distribution.

Returns:
the variance of the discrete uniform distribution

### getStandardDeviation

```public static double getStandardDeviation(int i,
int j)```
Computes and returns the standard deviation of the discrete uniform distribution.

Returns:
the standard deviation of the discrete uniform distribution

### getI

`public int getI()`
Returns the parameter i.

### getJ

`public int getJ()`
Returns the parameter j.

### setParams

```public void setParams(int i,
int j)```
Sets the parameters i and j for this object.

SSJ
V. 1.2.5.

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.