本算法原文如下,有需要的朋友可以点击进行下载
| 序号 | 原文(点击下载) |
|---|---|
| 本项目原文 | 【老生谈算法】基于MATLAB仿真的LCMV和LCEC算法性能比较.doc |
一、 均匀直线阵列信号模型

二、 LCMV算法原理

三、 LCEC算法原理

四、 仿真结果分析
图1为静态和波束,主波束宽度为5.78°。可以看到theta在25°、40°和45°处方向图幅度均大于-30dB。因此可以考虑在这三个角度处产生零陷。


图1
1、 两个干扰角度间隔大于波束宽度
实验中,干扰角度分别为:theta1=25°和theta2=45°。
如图2所示为LCMV准则下的和波束,可以看到方向图在25°和45°有很明显的零陷。

图2
图3所示均为LCEC准则下的和波束。可以看到方向图在25°和45°基本都有很明显的零陷。同时我们可以发现选取不同的干扰子空间也会对结果造成一定的影响。本实验中协方差矩阵的特征值矢量为D= [1.8e5 1.4e5 0.64 0.61 0.59 0.56 0.54 0.52 0.51 0.48 0.46
0.44 0.41 0.40 0.38 0.36],可以看到前两个值明显大于其他特征值。根据LCEC算法原理可知,大特征值对应的特征向量为干扰子空间,即D中的前两个值对应的特征子空间。

图3
图3-1中的干扰子空间为D中前两个特征值对应的特征向量,可以看到抗干扰性能很好,并且很好的保持了静态方向图的形状。图3-2中的干扰子空间为D中前三个特征值对应的特征向量,这样即把一部分噪声也当成了干扰信号进行抑制。虽然在25°和45°处产生了零陷,但是方向图形状改变的挺多。
2、 两个干扰角度间隔小于波束宽度
实验中,干扰角度分别为:theta1=44°和theta2=45°
(1)快拍数为512
如图4所示为LCMV准则下的和波束,可以看到方向图在44.01°和44.97°有很明显的零陷,稍微偏离要求角度。

图4
图5所示为LCEC准则下的和波束。零陷位置与LCMV准则下的方向图一致,方向图形状失真度比LCMV算法下小很多。

图5
(2)快拍数为112


图6
对比图6中的两个图,可以发现在快拍数偏少的情况下,LCEC算法下的零陷位置比LCMV算法下的零陷位置要更加准确些。
五、 附录:Matlab程序
clear all;clc;close all;
%% --------参数设置(16阵元均匀直线阵)---------
f=35e9;
c=3e8;
lamda=c/f;
d=0.5*lamda;
k=2*pi/lamda;
N=16;
%% ---------无干扰静态方向图----------
theta=-90:0.01:90;
L=length(theta);
a=zeros(N,L);
for i=1:N
a(i,:)=exp(j*k*(i-1)*d*sind(theta));
end
v=ones(N,1);
s=v'*a;
s1=abs(s);
s2=s1/max(s1);
s=20*log10(s2);
figure(1);
plot(theta,s);
xlabel('theta');
ylabel('幅度(dB)');
title('静态和波束');
grid on;
%% ---------期望信号、干扰信号及噪声信号------
M=512;%采用点数
theta0=0;
theta1=38;%干扰角度1
theta2=40;%干扰角度2
a0=exp(j*k*(0:N-1)'*d*sind(theta0));
a1=exp(j*k*(0:N-1)'*d*sind(theta1));
a2=exp(j*k*(0:N-1)'*d*sind(theta2));
I1=zeros(N,M);
I2=zeros(N,M);
n=zeros(N,M);
for ii=1:M
AM_I1=100*randn(1);
AM_I2=100*randn(1);
I1(:,ii)=AM_I1*a1;%干扰信号1
I2(:,ii)=AM_I2*a2;%干扰信号2
n(:,ii)=0.5*(randn(N,1)+j*randn(N,1));%噪声
end
X=I1+I2+n;
%% -------计算LCMV权重系数------
R=X*X'/M;
c=a0;
f=1;
w_lcmv=inv(R)*c*inv(c'*inv(R)*c);
y_lcmv=w_lcmv'*a;
y_lcmv=abs(y_lcmv);
y_lcmv=y_lcmv/max(y_lcmv);
y_lcmv=20*log10(y_lcmv);
figure(2)
plot(theta,y_lcmv);
xlabel('theta');
ylabel('幅度(dB)');
title('LCMV准则下的和波束');
grid on;
%% -------计算LCEC权重系数------
[V,D]=eig(R);%协方差矩阵特征值分解
un=V(:,1:14);
un=fliplr(un);
w_lcec=un*un'*c*inv(c'*un*un'*c)*1
% w_lcec=(eye(N)-Us*Us')*c*inv(c'*(eye(N)-Us*Us')*c)*1;
y_lcec=w_lcec'*a;
y_lcec=abs(y_lcec);
y_lcec=y_lcec/max(y_lcec);
y_lcec=20*log10(y_lcec);
figure(3)
plot(theta,y_lcec);
xlabel('theta');
ylabel('幅度(dB)');
title('LCEC准则下的和波束');
grid on;