基于粒子群优化算法的时间调制非线性频偏FDA(Matlab代码实现)
创始人
2024-04-01 11:46:19
0

🎉🎉🎉🎉欢迎您的到来😊😊😊

🥬博客主页博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

📝床头铭:将来的我一定会感谢现在奋斗的自己!

目录

🌈1 概述

🌟2 运行结果

⛳️3 参考文献

💥4 Matlab代码实现


🎁专栏目录链接:

🌈🌈🌈路径规划、神经网络预测、电气代码、智能算法及其应用、优化调度、图像处理、车间调度、信号处理、浪漫的她、数学建模🌟🌟🌟

🌈1 概述

   本文为了抑制FDA波束方向图的时变特性,提出了一种基于粒子群优化算法的时间调制非线性频偏FDA。根据仿真结果可以说明,该方法可以抑制FDA的时变特性,并且相较于传统时变抑制方法一时间调制频偏和时间调制非线性频偏,得到的波束方向图聚焦性更好。

🌟2 运行结果

 

 

 

部分代码:

%% TMLFO-FDA
clc;clear ;close;


%% ------TMLFO-FDA雷达参数设置
j=sqrt(-1);
M=18; %发射阵元数目
f0=5e9; %载波中心频率
delta_f=2000; %相邻阵元频率偏移
c=3e8;        %光速
lamda=c/f0;  %波长
d=lamda/2;    %阵元间距
D=d*(0:M-1);
Ru=c/delta_f;  %最大无模糊距离
theta=(-90:1:90)*pi/180; %测量角度向量
R=linspace(0,3e5,1000); %测量距离向量
f=f0+(0:M-1)*delta_f; %阵元载频向量(均匀线性增加)
R0 = 1e5; %天线指向目标的距离
theta0 = 30/180*pi;  %%天线指向目标的角度
T=linspace(0,0.2e-3,500);% 一个Tp
g=log((1:M));

%% ----波束方向图 t=0ms
P1 = zeros(length(theta),length(R)); %波束方向图
 for n = 1 : length(theta)
    for m = 1 : length(R)
%          Delta_f=TMLFO(f0,d,c,M,theta0,R0,0.01e-3);
%          a1=exp(-j*2*pi/c*(Delta_f'*R(m)-f0*D'*sin(theta(n)))); %导向矢量
%          w=exp(-j*2*pi/c*(Delta_f'*R0-f0*D'*sin(theta0)));

         a1=tmfo_AF(g,theta0,R0,theta(n),R(m),T(1));
          w1=ones(M,1);
         P1(n,m) =dot(a1,w1);
    end
 end
 
P1=P1';
figure(1); 
imagesc(theta*180/pi,R,abs(P1)/max(max(abs(P1)))); 
xlabel('\theta^o'); ylabel('R/m'); 
axis tight; axis xy;
title('');
colorbar;


%% -----时间角度维波束方向图
P2 = zeros(length(theta),length(T)); %波束方向图
 for n = 1 : length(theta)
    for m = 1 : length(T)
%         Delta_f=TMLFO(f0,d,c,M,theta0,R0,T(m));
         a2=tmfo_AF(g,theta0,R0,theta(n),R0,T(m));
          w2=tmfo_AF(g,theta0,R0,theta0,R0,T(1));
%          a2=exp(-j*2*pi/c*(-Delta_f'*T(m)*c-D'*f0*sin(theta(n))+Delta_f'*R0)); %导向矢量
%          w2=exp(-j*2*pi/c*(-Delta_f'*T(1)*c-D'*f0*sin(theta0)+Delta_f'*R0)); 
        % w2=ones(12,1);
        P2(n,m) =w2'*a2;
    end
 end
%% 画图:时间角度维
% P2=P2';
figure(2); 
imagesc(T,theta*180/pi,abs(P2)/max(max(abs(P2)))); 
ylabel('\theta^o'); xlabel('时间/ms'); 
axis tight; axis xy;
title('');
colorbar;

%% --------------时间距离维波束方向图     
P3 = zeros(length(R),length(T)); %波束方向图
 for n = 1 : length(R)
    for m = 1 : length(T)
         a3=tmfo_AF(g,theta0,R0,theta0,R(n),T(m));
          w3=tmfo_AF(g,theta0,R0,theta0,R0,T(1));
%         Delta_f=TMLFO(f0,d,c,M,theta0,R0,T(m));
%          a3=exp(-j*2*pi/c*(-Delta_f'*T(m)*c+Delta_f'*R(n)-D'*f0*sin(theta0))); %导向矢量
%          w3=exp(-j*2*pi/c*(-Delta_f'*T(1)*c+Delta_f'*R0-D'*f0*sin(theta0))); 
        P3(n,m) =w3'*a3;
    end
 end
%% 画图:时间距离维波束方向图
% P3=P3';
figure(3); 
imagesc(T,R,abs(P3)/max(max(abs(P3)))); 
ylabel('R/m'); xlabel('时间/ms'); 
axis tight; axis xy;
title('');
colorbar;

完整代码:基于粒子群优化算法的时间调制非线性频偏FDA(Matlab代码实现)

  

⛳️3 参考文献

[1]陈楚舒,盛川,谢军伟,王博,单泉铭.非线性频偏FDA对测向系统的欺骗研究[J].空军工程大学学报(自然科学版),2020,21(03):70-77.

[2]顾斯祺. 频控阵波束综合技术及其优化设计研究[D].南京理工大学,2019.DOI:10.27241/d.cnki.gnjgu.2019.000853.

💥4 Matlab代码实现

tmfo_AF.m为时间调制频偏FDA导向矢量函数;

TMFO_FDA为仿真时间调制频偏FDA波束方向图;

TMLFO_FDA为仿真时间调制对数频偏FDA波束方向图;. 

non_liner_a.m为非线性频偏FDA的导向矢量函数;. 

cost_function1.m为PSO算法的代价函数; 

pso2.m为进过PSO算法优化后的FDA每个阵元频偏系数矢量函数; 

pso_TMFO_fda.m为仿真经过PSO算法优化后的时间调制非线性频偏FDA波束方向图。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...