📄 lcmv.m
字号:
%lcmv波束形成
clear;clc;
la=1;
d=la/2;
thita1=90;
thita2=100;
fid1=2*pi*d*sin((90-thita1)*2*pi/360)/la;
fid2=2*pi*d*sin((90-thita2)*2*pi/360)/la;
afid1=[1;exp(j*fid1);exp(j*2*fid1);exp(j*3*fid1);exp(j*4*fid1);exp(j*5*fid1)];
afid2=[1;exp(j*fid2);exp(j*2*fid2);exp(j*3*fid2);exp(j*4*fid2);exp(j*5*fid2)];
c=[afid1,afid2];
g=[1,0]';
for thitaN=1:180
thita=thitaN*2*pi/360;
fi=2*pi*d*sin((pi/2)-thita)/la;
w0=2*pi*0.1;
N=100;
n=1:1000;
s1=cos(w0*n/N);
pn=0.5/100;
s1=s1+pn*randn(1,1000);
ad=[1;exp(j*fi);exp(j*2*fi);exp(j*3*fi);exp(j*4*fi);exp(j*5*fi)];
a=ad;
Rxx=zeros(6,6);
for i=1:N
s=(s1(i));
Rxx=(a*s)*(a*s)'+Rxx;
end
Rxx=Rxx/N+0.0001*eye(6,6);
wopt=inv(Rxx)*c*(inv((c)'*inv(Rxx)*c))*g;
pcbf(1,thitaN)=wopt'*Rxx*wopt;
pcbf(1,thitaN)=20*log(abs(pcbf(1,thitaN)));
end
thitaN=1:180;
plot(thitaN,pcbf(1,thitaN));
title('lcmv准则波束形成');
xlabel('空间角度');
ylabel('幅度db');
axis([0,180]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -