• 【老生谈算法】matlab实现LCMV和LCEC算法抗干扰性能比较研究——LCEC算法


    基于MATLAB仿真的LCMV和LCEC算法抗干扰性能比较研究


    1、原文下载:

    本算法原文如下,有需要的朋友可以点击进行下载


    2、算法详解:

    一、 均匀直线阵列信号模型
    在这里插入图片描述

    二、 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;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
  • 相关阅读:
    java线程状态与线程安全问题
    分页功能实现
    RabbitMQ的工作模式——WorkQueues
    从AlexNet到chatGPT的演进过程
    【AI视野·今日Robot 机器人论文速览 第四十四期】Fri, 29 Sep 2023
    2022亚马逊云科技re:Invent科创风尚,抢占下一个万亿赛道
    第十三届蓝桥杯大赛软件赛国赛B组C/C++(个人题解)
    MySql查询慢-如何提高查询速度呢?--解决方法
    vue3 快速入门系列 —— 基础
    171.Hadoop(七):Yarn的架构,工作机制,调度器,常用命令
  • 原文地址:https://blog.csdn.net/m0_53407570/article/details/125608816