gauss.m
上传用户:mozhenmi
上传日期:2008-02-18
资源大小:13k
文件大小:1k
源码类别:

其他小程序

开发平台:

Matlab

  1. function y = gauss(mu, covar, x)
  2. %GAUSS Evaluate a Gaussian distribution.
  3. %
  4. % Description
  5. %
  6. % Y = GAUSS(MU, COVAR, X) evaluates a multi-variate Gaussian  density
  7. % in D-dimensions at a set of points given by the rows of the matrix X.
  8. % The Gaussian density has mean vector MU and covariance matrix COVAR.
  9. %
  10. % See also
  11. % GSAMP, DEMGAUSS
  12. %
  13. % Copyright (c) Christopher M Bishop, Ian T Nabney (1996, 1997)
  14. invcov = inv(covar);
  15. [n, d] = size(x);
  16. mu = reshape(mu, 1, d);    % Ensure that mu is a row vector
  17. x = x - ones(n, 1)*mu;
  18. fact = sum(((x*invcov).*x), 2);
  19. y = exp(-0.5*fact);
  20. y = y./sqrt((2*pi)^d*det(covar));