⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 func_occ_root.m

📁 海杂波模拟和循环对消法实现杂波抑制的matlab源程序,包含不同信噪比下的目标回波以及最小二乘实现的滤波器完成杂波抑制
💻 M
字号:
function [FTacdata,acdata]=OCC_root(tvdata,T,Num_C)
%功能:循环对消法
%输入变量:tvdata输入的时域(fft之前)数据(列向量)
%         T数据采样间隔(扫频周期)
%         Num_C迭代对消次数
%输出变量:acdata对消后的时域数据
%         FTacdata对消后的频域(fft之后)数据
for k=1:Num_C
N=length(tvdata);
ta=N*T;                           %相干积累时间
delta_dop=1/ta;                   %多普勒分辨率
t=T*(0:N-1);
FTdata=fftshift(fft(tvdata)); 
[Amax,p_Amax]=max(abs(FTdata));
a=Amax/N;                          %幅度估计
f=(p_Amax-(N/2+1))*delta_dop;      %频率估计
fai=0:pi/N:2*pi;
sum_error=zeros(size(fai));
for n=1:N
    error=abs(tvdata(n)-a*exp(j*(2*pi*f*(n-1)*T+fai))).^2;         %最小二乘法
    sum_error=sum_error+error;
end
[summin,p_summin]=min(sum_error);                                  %误差最小
ph_initial=fai(p_summin);                                         %频率估计
s=a*exp(j*(2*pi*f*t'+ph_initial));                                  %估计的正弦信号
acdata=tvdata-s;                                                   %剔除该正弦信号
tvdata=acdata;                                                     
end
FTacdata=fft(acdata);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -