Overview | Package | Class | Tree | Deprecated | Index | Help
| SSJ V. 2.1.1.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## umontreal.iro.lecuyer.probdistmulti
Class DirichletDist

    java.lang.Object
      umontreal.iro.lecuyer.probdistmulti.ContinuousDistributionMulti
          umontreal.iro.lecuyer.probdistmulti.DirichletDist

    public class DirichletDist

extends ContinuousDistributionMulti

Implements the abstract class `ContinuousDistributionMulti` for the Dirichlet distribution with parameters (α1,...,αd), αi > 0. The probability density is

P[X = (x1,..., xd)] = Γ(α0)∏i=1dxiαi-1/(∏i=1dΓ(αi))

where xi >= 0, ∑i=1dxi = 1, α0 = ∑i=1dαi, and Γ is the Gamma function.

Constructor Summary
`DirichletDist(double[] alpha)`

Method Summary
`double` | `density(double[] x)` Returns f (x1, x2,…, xd), the probability density of X evaluated at the point x, where x = {x1, x2,…, xd}.
`static double` | `density(double[] alpha, double[] x)` Computes the density of the Dirichlet distribution with parameters (α1,...,αd).
`double[]` | `getAlpha()` Returns the parameters (α1,...,αd) of this object.
`double` | `getAlpha(int i)` Returns the ith component of the alpha vector.
`double[][]` | `getCorrelation()` Returns the correlation matrix of the distribution, defined as ρij = σij/(σ_iiσ_jj)1/2.
`static double[][]` | `getCorrelation(double[] alpha)` Computes the correlation matrix of the Dirichlet distribution with parameters (α1,...,αd).
`double[][]` | `getCovariance()` Returns the variance-covariance matrix of the distribution, defined as σij = E[(Xi - μi)(Xj - μj)].
`static double[][]` | `getCovariance(double[] alpha)` Computes the covariance matrix of the Dirichlet distribution with parameters (α1,...,αd).
`static double[]` | `getMaximumLikelihoodEstimate(double[][] x, int n, int d)` Deprecated.
`double[]` | `getMean()` Returns the mean vector of the distribution, defined as μi = E[Xi].
`static double[]` | `getMean(double[] alpha)` Computes the mean E[X] = αi/α0 of the Dirichlet distribution with parameters (α1,...,αd), where α0 = ∑i=1dαi.
`static double[]` | `getMLE(double[][] x, int n, int d)` Estimates the parameters [ hat(α_1),…, hat(α_d)] of the Dirichlet distribution using the maximum likelihood method.
`void` | `setParams(double[] alpha)` Sets the parameters (α1,...,αd) of this object.

Methods inherited from class umontreal.iro.lecuyer.probdistmulti.ContinuousDistributionMulti
`getDimension`

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

Constructor Detail

### DirichletDist

    public DirichletDist(double[] alpha)

Method Detail

### density

    public double density(double[] x)

  Description copied from class: `ContinuousDistributionMulti`
  Returns f (x1, x2,…, xd), the probability density of X evaluated at the point x, where x = {x1, x2,…, xd}. The convention is that x[i - 1] = xi.

  Specified by:
    `density` in class `ContinuousDistributionMulti`
  Parameters:
    `x` - value at which the density is evaluated
  Returns:
    density function evaluated at `x`

### getMean

    public double[] getMean()

  Description copied from class: `ContinuousDistributionMulti`
  Returns the mean vector of the distribution, defined as μi = E[Xi].

  Specified by:
    `getMean` in class `ContinuousDistributionMulti`

### getCovariance

    public double[][] getCovariance()

  Description copied from class: `ContinuousDistributionMulti`
  Returns the variance-covariance matrix of the distribution, defined as
  σij = E[(Xi - μi)(Xj - μj)].

  Specified by:
    `getCovariance` in class `ContinuousDistributionMulti`

### getCorrelation

    public double[][] getCorrelation()

  Description copied from class: `ContinuousDistributionMulti`
  Returns the correlation matrix of the distribution, defined as ρij = σij/(σ_iiσ_jj)1/2.

  Specified by:
    `getCorrelation` in class `ContinuousDistributionMulti`

### density

    public static double density(double[] alpha,
                                 double[] x)

  Computes the density of the Dirichlet distribution with parameters (α1,...,αd).

### getCovariance

    public static double[][] getCovariance(double[] alpha)

  Computes the covariance matrix of the Dirichlet distribution with parameters (α1,...,αd).

### getCorrelation

    public static double[][] getCorrelation(double[] alpha)

  Computes the correlation matrix of the Dirichlet distribution with parameters (α1,...,αd).

### getMaximumLikelihoodEstimate

    @Deprecated
    public static double[] getMaximumLikelihoodEstimate(double[][] x,
                                                                   int n,
                                                                   int d)

  Deprecated.

  It is now called `getMLE`.

### getMLE

    public static double[] getMLE(double[][] x,
                                  int n,
                                  int d)

  Estimates the parameters [ hat(α_1),…, hat(α_d)] of the Dirichlet distribution using the maximum likelihood method. It uses the n observations of d components in table x[i][j], i = 0, 1,…, n - 1 and j = 0, 1,…, d - 1.

  Parameters:
    `x` - the list of observations to use to evaluate parameters
    `n` - the number of observations to use to evaluate parameters
    `d` - the dimension of each vector
  Returns:
    returns the parameter [ hat(α_1),…, hat(α_d)]

### getMean

    public static double[] getMean(double[] alpha)

  Computes the mean E[X] = αi/α0 of the Dirichlet distribution with parameters (α1,...,αd), where α0 = ∑i=1dαi.

### getAlpha

    public double[] getAlpha()

  Returns the parameters (α1,...,αd) of this object.

### getAlpha

    public double getAlpha(int i)

  Returns the ith component of the alpha vector.

### setParams

    public void setParams(double[] alpha)

  Sets the parameters (α1,...,αd) of this object.

Overview | Package | Class | Tree | Deprecated | Index | Help
| SSJ V. 2.1.1.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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