Code covered by the BSD License
- build_mix_2D_gaussian( u_...% build_mix_2D_gaussian - build a distribution of a mixed gaussian
- build_mix_gaussian( u_c,s...% build_mix_gaussian - build a distribution of a mixed gaussian
- fit_ML_laplace( x,hAx )
fit_ML_normal - Maximum Likelihood fit of the laplace distribution of i.i.d. samples!.
- fit_ML_log_normal( x,hAx )
fit_ML_normal - Maximum Likelihood fit of the log-normal distribution of i.i.d. samples!.
- fit_ML_maxwell( x,hAx )
fit_ML_maxwell - Maximum Likelihood fit of the maxwellian distribution of i.i.d. samples!.
- fit_ML_normal( x,hAx )
fit_ML_normal - Maximum Likelihood fit of the normal distribution of i.i.d. samples!.
- fit_ML_rayleigh( x,hAx )
fit_ML_rayleigh - Maximum Likelihood fit of the rayleigh distribution of i.i.d. samples!.
- fit_maxwell_pdf( x,y,W,hA...fit_maxwell_pdf - Non Linear Least Squares fit of the maxwellian distribution.
- fit_mix_2D_gaussian( X,M )
% fit_mix_2D_gaussian - fit parameters for a 2D mixed-gaussian distribution using EM algorithm
- fit_mix_gaussian( X,M )
% fit_mix_gaussian - fit parameters for a mixed-gaussian distribution using EM algorithm
- fit_rayleigh_pdf( x,y,W,h...fit_rayleigh_pdf - Non Linear Least Squares fit of the Rayleigh distribution.
- plot_laplace( x,params,hA...plot the laplace distribution with parameter "u" and "b"
- plot_log_normal( x,params...plot the log-normal distribution with parameters "m" and "s"
- plot_maxwell( x,params,hA...plot the maxwell distribution with parameter "a"
- plot_mix_gaussian( u,sig,...% plot_mix_gaussian - plot the samples and the estimation.
- plot_normal( x,params,hAx...plot the normal distribution with parameter "u" and "sig2"
- plot_rayleigh( x,params,h...plot the rayleigh distribution with parameter "a"
View all files
A Collection of Fitting Functions
05 Dec 2003
(Updated 29 Apr 2004)
A collection of fitting functions for various distributions.
% This folder contains a collection of "fitting" functions.
% (Some has demo options - the third section)
% The GENERAL input to the functions should be samples of the distribution.
% for example, if we are to fit a normal distribution ('gaussian') with a mean "u" and varaince "sig"^2
% then the samples will distribute like:
% samples = randn(1,10000)*sig + u
%fitting with Least-Squares is done on the histogram of the samples.
% fitting with Maximum likelihood is done directly on the samples.
% Contents of this folder
% 1) Maximum likelihood estimators
% 2) Least squares estimators
% 3) EM algorithm for estimation of multivariant gaussian distribution (mixed gaussians)
% 4) added folders: Create - which create samples for the EM algorithm test
% Plot - used to plot each of the distributions (parametric plot)
% Maximum likelihood estimators
% fit_ML_maxwell - fit maxwellian distribution
% fit_ML_rayleigh - fit rayleigh distribution
% (which is for example: sqrt(abs(randn)^2+abs(randn)^2))
% fit_ML_laplace - fit laplace distribution
% fit_ML_log_normal- fit log-normal distribution
% fit_ML_normal - fit normal (gaussian) distribution
% NOTE: all estimators are efficient estimators. for this reason, the distribution
% might be written in a different way, for example, the "Rayleigh" distribution
% is given with a parameter "s" and not "s^2".
% least squares estimators
% fit_maxwell_pdf - fits a given curve of a maxwellian distribution
% fit_rayleigh_pdf - fits a given curve of a rayleigh distribution
% NOTE: these fit function are used on a histogram output which is like a sampled
% distribution function. the given curve MUST be normalized, since the estimator
% is trying to fit a normalized distribution function.
% Multivariant Gaussian distribution
% for demo of 1D mixed-gaussian fitting, run: fit_mix_gaussian
% for demo of 2D mixed-gaussian fitting, run: fit_mix_2d_gaussian
% these routines fit and plot the results of the parameters of:
% random distribution of random amount of gaussians with random parameters