SSJ
V. 2.6.

## umontreal.iro.lecuyer.probdist Class BernoulliDist

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

`public class BernoulliDistextends DiscreteDistributionInt`

Extends the class `DiscreteDistributionInt` for the Bernoulli distribution with parameter p, where 0 <= p <= 1. Its mass function is given by

 f (x) = 1 - p, if x = 0; f (x) = p, if x = 1; f (x) = 0, otherwise.

Its distribution function is

 F(x) = 0, if x < 0; F(x) = 1 - p, if 0 <= x < 1; F(x) = 1, if x >= 1.

Field Summary

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

Constructor Summary
`BernoulliDist(double p)`
Creates a Bernoulli distribution object.

Method Summary
`static double` ```barF(double p, int x)```
Returns the complementary Bernoulli distribution function bar(F)(x) = P[X >= x] with parameter p.
` double` `barF(int x)`
Returns bar(F)(x), the complementary distribution function.
`static double` ```cdf(double p, int x)```
Returns the Bernoulli distribution function F(x) with parameter p (see eq.).
` double` `cdf(int x)`
Returns the distribution function F evaluated at x (see).
`static BernoulliDist` ```getInstanceFromMLE(int[] x, int m)```
Creates a new instance of a Bernoulli distribution with parameter p estimated using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1.
` double` `getMean()`
Returns the mean of the distribution function.
`static double` `getMean(double p)`
Returns the mean E[X] = p of the Bernoulli distribution with parameter p.
`static double[]` ```getMLE(int[] x, int m)```
Estimates the parameters p of the Bernoulli distribution using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1.
` double` `getP()`
Returns the parameter p of this object.
` double[]` `getParams()`
Returns an array that contains the parameter p of the current distribution: [p].
` double` `getStandardDeviation()`
Returns the standard deviation of the distribution function.
`static double` `getStandardDeviation(double p)`
Computes the standard deviation of the Bernoulli distribution with parameter p.
` double` `getVariance()`
Returns the variance of the distribution function.
`static double` `getVariance(double p)`
Computes the variance Var[X] = p(1 - p) of the Bernoulli distribution with parameter p.
`static int` ```inverseF(double p, double u)```
Returns the inverse of the Bernoulli distribution function with parameter p at u.
` int` `inverseFInt(double u)`
Returns the inverse distribution function F-1(u), where 0 <= u <= 1.
`static double` ```prob(double p, int x)```
Returns the Bernoulli probability f (x) with parameter p (see eq.).
` double` `prob(int x)`
Returns p(x), the probability of x.
` void` `setParams(double p)`
Resets the parameter to this new value.
` String` `toString()`

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

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

Constructor Detail

### BernoulliDist

`public BernoulliDist(double p)`
Creates a Bernoulli distribution object.

Method Detail

### prob

`public double prob(int x)`
Description copied from class: `DiscreteDistributionInt`
Returns p(x), the probability of x.

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. See the WARNING above.

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(double p,
int x)```
Returns the Bernoulli probability f (x) with parameter p (see eq.).

### cdf

```public static double cdf(double p,
int x)```
Returns the Bernoulli distribution function F(x) with parameter p (see eq.).

### barF

```public static double barF(double p,
int x)```
Returns the complementary Bernoulli distribution function bar(F)(x) = P[X >= x] with parameter p.

### inverseF

```public static int inverseF(double p,
double u)```
Returns the inverse of the Bernoulli distribution function with parameter p at u.

### getMLE

```public static double[] getMLE(int[] x,
int m)```
Estimates the parameters p of the Bernoulli distribution using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1. The estimate is returned in a one-element array: [p].

Parameters:
`x` - the list of observations used to evaluate parameters
`m` - the number of observations used to evaluate parameters
Returns:
returns the parameter [hat(p)]

### getInstanceFromMLE

```public static BernoulliDist getInstanceFromMLE(int[] x,
int m)```
Creates a new instance of a Bernoulli distribution with parameter p estimated using the maximum likelihood method, from the m observations x[i], i = 0, 1,…, m - 1.

Parameters:
`x` - the list of observations to use to estimate the parameters
`m` - the number of observations to use to estimate the parameters

### getMean

`public static double getMean(double p)`
Returns the mean E[X] = p of the Bernoulli distribution with parameter p.

Returns:
the mean of the Bernoulli distribution E[X] = np

### getVariance

`public static double getVariance(double p)`
Computes the variance Var[X] = p(1 - p) of the Bernoulli distribution with parameter p.

Returns:
the variance of the Bernoulli distribution

### getStandardDeviation

`public static double getStandardDeviation(double p)`
Computes the standard deviation of the Bernoulli distribution with parameter p.

Returns:
the standard deviation of the Bernoulli distribution

### getP

`public double getP()`
Returns the parameter p of this object.

### getParams

`public double[] getParams()`
Returns an array that contains the parameter p of the current distribution: [p].

### setParams

`public void setParams(double p)`
Resets the parameter to this new value.

### toString

`public String toString()`
Overrides:
`toString` in class `Object`

SSJ
V. 2.6.

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