% Simulation d'une loi gaussienne multivariée
clear
% G = une matrice symétrique positive quelconque
X = rand(4,4);
G = X'*X/4
% m = un vecteur moyenne quelconque
m = rand(4,1) 
% A = Racine carrée de G 
A=sqrtm(G);
% 
n = 10000;
moyemp = zeros(4,1);
realis = zeros(4,n);
for i=1:n,
 realis(:,i) = m + A*randn(4,1);
 moyemp = moyemp + realis(:,i);
end
moyemp = moyemp/n;
% Variation relative par rapport à la moyenne théorique
rap_moy_relat=max(abs(moyemp-m))/norm(m)
% Calcul de la matrice de covariance empirique
covemp=zeros(4,4);
for i=1:4, 
  for j=1:4,
	covemp(i,j)=dot(realis(i,:),realis(j,:))/n-moyemp(i)*moyemp(j);
  end
end
covemp
% Degrés de liberté par rapport à la matrice théorique
X=covemp/G % Faire `help slash' pour en savoir plus sur cette division
dfs=trace(eye(4,4)-X)  
% Réduction d'entropie
ent=-.5*log2(det(X))
