Добрый день есть задачка промоделировать приведенный алгоритм пеленгации, для случая круговой антенной решетки.
Реализовал модель, взяв за основу 
http://soar.wichita.edu/xmlui/bitstream/handle/10057/1516/t07081.pdf?sequence=1 эту статью.
Код:
clear all;clc;
DOAs=[5 50 110]*pi/180;               %DOA’s of signals in radian
M=28;                                 %Number of array elements
q=1;                                  %Number of data samples
r=1;                                  %radius = wavelength   
p=length(DOAs);                       %Number of signals
h=M/2-1;
 
   for i =1:p
   A(:,i)=exp(-1j*2*pi*r*cos(DOAs(i)-2*pi*(0:M-1)/M));                     %steering
   end
sig=round(rand(p,q))*2-1;                                                                                     
noise=sqrt(1/2)*(randn(M,q)+1i*randn(M,q));
 X=A*sig+noise;                                            
for i=-h:h
    for n=0:M-1
        F(i+h+1,n+1)=exp((1j*2*pi/M)*n*i);    
    end
end
 
 k=-h:h;
 J=diag(1./(sqrt(M).*1j.^(k).*besseli(k,2*pi)));  
 T=J*F;
 
 X_T=T*X;
 
   
     for i=1:h+1
     Xtop(i,:)=X_T(h+2-i:end-i+1);
     end
   
     Xtop_cov=Xtop*Xtop';
     
     [U S V]=svd(Xtop_cov);
     Ush=U(:,1:p);
     Vsh=V(:,1:p);
     Ssh=S(1:p,1:p);
     
     Q=Ush*Ssh*Vsh';
     Q1=Q(1:h,:);
     Q2=Q(2:h+1,:);
     P=pinv(Q1)*Q2;
     
     [Vect D]= eig(P);
     
     [D,Ind]=sort(diag(D),1,'descend');  %Сортировка собственных чисел
  
     Y1=angle(D(1))*180/pi
     Y2=angle(D(2))*180/pi
     Y3=angle(D(3))*180/pi
   
Все сделано по методе, а углы правильно не определяются,да и изменяются в зависимости от того какой сигнал на входе. 
Кто-нибудь имел опыт моделирования такой системы?Можете объяснить где я допустил ошибку?
заранее извиняюсь если написал не в тот раздел.