# ecdfactory

## ecdfactory

Construct a zero-mean elliptically contoured distribution structure

Syntax

D = ecdfactory(datadim, radialD)


Description

Distribution Parameters

• radialD (parameter structure) Contains the parameters of the square radial pdf

Probability Density Function

The distribution has the following density:

where is the data space dimensions, is the scatter matrix and is the squared radial distribution.

Example

% Construct a 2-dimensional elliptical-gamma distribution
D = ecdfactory(2, gammafactory());
% Build a parameter structure for it:
theta = struct('sigma', [3 0; 0 2], 'radialD', struct('a', 3, 'b', 1));
% Plot the PDF:
x = -5:0.2:5;
y = -5:0.2:5;
[X, Y] = meshgrid(x, y);
data = [X(:) Y(:)]';
f = D.pdf(theta, data);
surf(X, Y, reshape(f, size(X)));


## name

Flag to control the memory usage (resulting code will be slower)

## penalizerparam

Penalizer Info

The default penalizer for this distribution is the Inverse-Wishart distribution for covariance and default prior for squared-radial.

Inverse-Wishart prior on covariance has the following form:

where

• nu (scalar) : Degrees of freedom.

## fixate

Make some parameters fixed

Syntax

newD = D.fixate(paramName, paramValue, ...)


Description

newD = D.fixate(paramName, paramValue, ...) returns the new gamma distribution newD where the specified parameters are fixed so that they won't change in estimation. paramName is the name of the parameter ('a' or 'b') and paramValue is its desired fixed value.

Example

D = gammafactory();
D = D.fixate('a', 2);


## unfix

Undo fixate

Syntax

newD = D.unfix(paramName, ...)


Description

newD = D.unfix(paramName, ...) where D is a gamma distribution with fixed parameters, returns the new gamma distribution newD where the specified parameters are unfixed. paramName is the name of the parameter ('a' or 'b').

Example

D = gammafactory();
D = D.fixate('a', 2, 'b', 1);
D = D.unfix('a');


## fullparam

Get the full parameter structure, given the variable parameter structure

Syntax

fulltheta = D.fullparam(theta)


Description

fulltheta = D.fullparam(theta) where D is a gamma distribution with fixed parameters, returns the full parameters of the gamma distribution including the fixed parameters. theta is a parameter structure for the distribution D (i.e. excluding the fixed parameters).

Example

D = gammafactory();
D = D.fixate('a', 2);
theta = struct('b', 1);
fulltheta = D.fullparam(theta)

fulltheta =
    b: 1
a: 2