from
Blind recognition of space time codes
by Choqueuse Vincent
These scripts implement several algorithms for the blind recognition of space time block codes.
|
| [log_LF_CP]=compute_LF_CP(received_signal,n,l)
|
function [log_LF_CP]=compute_LF_CP(received_signal,n,l)
%HELP compute_LF_CP
%Compute the Information criteria for a STBC of code length l using n
%number of symbols per block (CP
%Classifier).
%
%Input: - received_signal
% - n: number of symbols per block
% - l: code length
%
%Output: - LF: Fonction de vraisemblance
%
%reference: [1] V. Choqueuse, M. Marazin, L. Collin, K.C. Yao, K and G. Burel
%"Blind Recognition of Linear SpaceTime Block Codes: A Likelihood-Based
%Approach" IEEE Transactions on Signal Processing, Vol 58 (3), p 1290-1299,
%2010
N=size(received_signal,2);
nr=size(received_signal,1);
%% Compute the estimated covariance matrice R (equation 26)
Nb=N/l;
received_signal_block1=[real(received_signal);imag(received_signal)];
received_signal_block=reshape(received_signal_block1,2*nr*l,Nb);
R=(received_signal_block*received_signal_block.')/Nb;
%% Compute the eigenvalue rho of the covariance matrix R
[Ue,rho]=eig(R);
[rho,index]=sort(diag(rho),'descend');
rho_signal=rho(1:2*n);
rho_noise=rho(2*n+1:end);
%% Compute log LF (remove the last term since it does not depend on the STBC)
log_LF=-(Nb/2)*sum(log(rho_signal))...
-(N*nr-Nb*n)*log(mean(rho_noise));
%% Compute the Number of free parameter z (equation 37)
z=n*(4*nr*l-2*n+1)+1;
%% Compute the Cost function
log_LF_CP=log_LF-z;
|
|
Contact us at files@mathworks.com