?? func_occ_root.m
字號:
function [FTacdata,acdata]=OCC_root(tvdata,T,Num_C)
%功能:循環(huán)對消法
%輸入變量:tvdata輸入的時域(fft之前)數(shù)據(jù)(列向量)
% T數(shù)據(jù)采樣間隔(掃頻周期)
% Num_C迭代對消次數(shù)
%輸出變量:acdata對消后的時域數(shù)據(jù)
% FTacdata對消后的頻域(fft之后)數(shù)據(jù)
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);
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -