• 大小: 3KB
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-05-13
  • 语言: Matlab
  • 标签: matlab  DOA  ji  

资源简介

由于多径效应,常规子空间分解类DOA估计算法失效,基于双向平滑的解相干算法可以有效恢复协方差矩阵的秩,进行相干信号源的DOA估计。

资源截图

代码片段和文件信息

clc
clear all
format long 
%双向平滑算法
%FBSS适用于最一般的情况
%%
L                       =100;                     %快拍数
M                       =9;                      %阵元数
j=sqrt(-1);
doa                     =[-20 0 40]/180*pi;    %入射角度
doa1                    =[-20 0 40];       
w                       =[pi/2pi/2pi/3]‘;  %信号频率
N                       =length(doa);             %信源数
coefficient             =[1-0.64-j*0.650.75-j*0.35];%衰减系数
lamda                   =150;                     %波长
d                       =lamda/2;                 %间距
snr                     =10;                       %信噪比
noise_power             =2;                       %噪声功率
m                       =6;                       %每个子阵阵元数量
p                       =M-m+1;                   %子阵数量
%%
B=zeros(NM);
for k=1:N
    B(k:)=exp(-j*2*pi*d*sin(doa(k))/lamda*[0:M-1]);
end
B=B.‘;
w_noise = randn(ML)+j*randn(ML);
Signal_Amplitude = sqrt(2*noise_power*10^(snr/10));
s=Signal_Amplitude *exp(j*(w*[1:L]));
xx=B*diag(coefficient)*s;
X=xx+w_noise;
tic;
%%
% 截取子阵,作协方差矩阵再取平均
H=zeros(mm);
for k=1:p 
    X1=X(k:k+m-1:);%直接对总的加噪信号模型进行截取即可
    X2=X1*X1‘;%每个子阵的协方差矩阵
    H=H+X2;
end
H=H/p;%前向平滑矩阵
XX=flipud(X)

评论

共有 条评论