关于波束形成的程序,哪位大神能给小弟讲解一下。
4单元均匀线阵自适应波束形成图clear
clc
format long;
v=1;
M=4;
N=1000;
f0=21*10^3;
f1=11*10^3;
f2=15*10^3;
omiga0=2*pi*f0;
omiga1=2*pi*f1;
omiga2=2*pi*f2;
sita0=0.8;
sita1=0.4;
sita2=2.1;
for t=1:N
adt(t)=sin(omiga0*t/(N*f0));
a1t(t)=sin(omiga1*t/(N*f1));
a2t(t)=sin(omiga2*t/(N*f2));
end
for i=1:M
ad(i,1)=exp(j*(i-1)*pi*sin(sita0));
a1(i,1)=exp(j*(i-1)*pi*sin(sita1));
a2(i,1)=exp(j*(i-1)*pi*sin(sita2));
end
R=zeros(M,M);
for t=1:N
x=adt(t)*ad+a1t(t)*a1+a2t(t)*a2;
R=R+x*x';
end
R=R/N;
miu=1/(ad'*inv(R)*ad);
w=miu*inv(R)*ad;
for sita=0:pi/100:pi
for i=1:M
x_(i,1)=exp(j*(i-1)*pi*sin(sita));
end
y(1,v)=w'*x_;
v=v+1;
end
y_max=max(y(:));
y_1=y/y_max;
y_db=20*log(y_1);
sita=0:pi/100:pi;
plot(sita,y)
Xlabel(‘sitaa’)
Ylabel(‘天线增益db’)
4单元均匀线阵自适应波束形成
目标
clear
clc
format long;
v=1;
M=4;
N=100;
f0=21*10^3;
omiga0=2*pi*f0;
sita0=0.6
for t=1:N
adt(t)=sin(omiga0*t/(N*f0));
end
for i=1:M
ad(i,1)=exp(j*(i-1)*pi*sin(sita0));
end
R=zeros(4,4);
r=zeros(4,1);
for t=1:N
x=adt(t)*ad;
R=R+x*x.';
end
R=R/N;
miu=1/(ad.'*inv(R)*ad);
w=miu*inv(R)*ad;
for sita=0:pi/100:pi/2
for i=1:M
a(i,1)=exp(j*(i-1)*pi*sin(sita));
end
y(1,v)=w.'*a;
v=v+1;
end
sita=0:pi/100:pi/2;
plot(sita,y)
xlabel('sita')
ylabel('天线增益’)
这是程序,小弟正在做本科生毕业设计。对这个程序一窍不通,哪位大神能给我讲解一下这个程序的思路,不胜感激!!!
每个人都是先一窍不通的
若是我的话, 我会一行一行边看文献边试的, 记得个人当初应该是如此
页:
[1]