mvdrnmusic.m

来自「MVDR VS MUSIC algorithm」· M 代码 · 共 63 行

M
63
字号
%%%%%       MVDR  and  MUSIC     %%%%%
%%%%%    Date : 2009. 04. 24    %%%%%           
%%%%%      by Choi Jun Hyeok    %%%%%

clear all
close all


M=8; %季辑 肮荐
K=2; % 钎利 肮荐
c=3e8; % 傈颇狼 加档
f=76.5*10^9; %林颇荐
d=c/(2*f); % 季辑埃狼 芭府

th=[-20 20];
degree=[-90:90];

u=randn(K,100); % 鸥百狼 脚龋俊 措茄 惯积
n=randn(M,100); %畴捞令 惯积

%%% MVDR(Minimum Variance Distortionless Response)
sensor=[1:M]';
for deg =1:K
    A(:,deg)=exp(j*2*pi*f*(sensor-1)*d*sin(th(deg)*pi/180)/c); % 沥泅颇 脚龋
end

%%% MUSIC Algorithm
X=A*u+n;
R=X*X';

[V,D]=eig(R);
R_inv =inv(R);


for steer=-90:90
    a=exp(j*2*pi*f*(sensor-1)*d*sin(steer*pi/180)/c); %沥泅颇 脚龋
    Pl(steer+91)=1/(abs(a'*R_inv*a));
end


for steer=-90:90
    a=exp(j*2*pi*f*(sensor-1)*d*sin(steer*pi/180)/c);
    sum_temp=0;
    for i=M-K:-1:1
        sum_temp=sum_temp+abs(V(:,i)'*a)^2;
    end
    P(steer+91)=1/sum_temp;
    
end


dB_Pc=10*log10(Pl/max(Pl));
figure;
plot(degree,dB_Pc)
grid on


hold on

dB_P=10*log10(P/max(P));
plot(degree,dB_P,'r')

legend('MVDR', 'MUSIC')

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?