Pre-ci test passed git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4000 818b1a75-f10b-46b9-bf7c-635c3b92a50f
23 lines
357 B
Matlab
23 lines
357 B
Matlab
function CAP = cap_MMSE(G,n_p)
|
|
|
|
CAP = 0;
|
|
|
|
[N_Rx, N_Tx] = size(G);
|
|
|
|
if (G == zeros(N_Rx,N_Tx))
|
|
CAP = 0;
|
|
else
|
|
iG = inv(1./(n_p*N_Tx)*G'*G + eye(N_Tx));
|
|
%MF = iG * G';
|
|
%MF = G';
|
|
|
|
% HW = abs(MF*G);
|
|
|
|
for v = 1:N_Tx
|
|
% MMSE (see Paulraj 2002 Eqn. 7.49)
|
|
CAP = CAP + log2(1/iG(v,v));
|
|
end %of for loop
|
|
|
|
end %of if loop HS
|
|
|