资源简介
多级维纳滤波器MATLAB代码,能够正常运行,在小快拍的情况下产生宽零陷,能降低权值计算求解的计算复杂度。
代码片段和文件信息
%数据中含有或不含有期望信号对方向图有影响,当MWF也采用理想数据时,性能相同且采样数可以大大减小;
%当变换B_0、h0为B、Wq,则为LC-MWF
clc;
clear all;
close all;
N=8;%辅助天线的数目
d=0.5;
theta=-90:0.5:90;
theta_signal=0; %来波方向
theta_jamming1=-45; %干扰方向
theta_jamming2=25; %干扰方向
theta_jamming3=55; %干扰方向
L=128;%采样单元数
steer_signal=exp(1i*2*pi*d*sin(theta_signal*pi/180)*[0:N-1]‘); %期望信号导向矢量
%干扰信号导向矢量
steer_jamming1=exp(1i*2*pi*d*sin(theta_jamming1*pi/180)*[0:N-1]‘);
steer_jamming2=exp(1i*2*pi*d*sin(theta_jamming2*pi/180)*[0:N-1]‘);
steer_jamming3=exp(1i*2*pi*d*sin(theta_jamming3*pi/180)*[0:N-1]‘);
%训练数据中不含期望信号时和含有期望信号时
for i=1:L;
amp_signal=sqrt(2*10)*randn(1);%信号的幅度随机产生,保证信号之间是不相关的
amp_jamming1=sqrt(2*10^4)*randn(1); %4
amp_jamming2=sqrt(2*10^3.5)*randn(1); %3.5
amp_jamming3=sqrt(2*10^5)*randn(1); %5
amp_noise=sqrt(2);
jam(:i)=amp_jamming1*exp(1i*2*pi*d*sin(theta_jamming1*pi/180)*[0:N-1]‘)...
+amp_jamming2*exp(1i*2*pi*d*sin(theta_jamming2*pi/180)*[0:N-1]‘)...
+amp_jamming3*exp(1i*2*pi*d*sin(theta_jamming3*pi/180)*[0:N-1]‘)...
+amp_noise*(randn(N1)+1i*randn(N1));%干扰+噪声
s(:i)=amp_signal*exp(1i*2*pi*d*sin(theta_signal*pi/180)*[0:N-1]‘)...
+amp_jamming1*exp(1i*2*pi*d*sin(theta_jamming1*pi/180)*[0:N-1]‘)...
+amp_jamming2*exp(1i*2*pi*d*sin(theta_jamming2*pi/180)*[0:N-1]‘)...
+amp_jamming3*exp(1i*2*pi*d*sin(theta_jamming3*pi/180)*[0:N-1]‘)...
+amp_noise*(randn(N1)+1i*randn(N1));%接收信号(信号+干扰+噪声)
end
Rs=10*steer_signal*steer_signal‘;%期望信号自相关矩阵,相当于X(t)
Rj=10^4*steer_jamming1*steer_jamming1‘...
+10^3.5*steer_jamming2*steer_jamming2‘...
+10^5*steer_jamming3*steer_jamming3‘;
Rn=eye(N);
Rx=Rs+Rj+Rn;%接收信号协方差矩阵?
%R=s*s‘/L;
%Sx=1/L*s*s‘; %接收信号协方差矩阵
Sx=1/L*jam*jam‘;
us=d*sin(theta_signal*pi/180); %期望信号方向空间频率;
d0
- 上一篇:RLC电路matlab仿真m文件
- 下一篇:Simuli
nk电池仿真模型
评论
共有 条评论