作业帮 > 综合 > 作业

请问用matlab进行谐波分析,用的是fft加窗插值算法.加窗的程序我会写,插值的程序怎样写?你会吗?

来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/09/20 06:50:55
请问用matlab进行谐波分析,用的是fft加窗插值算法.加窗的程序我会写,插值的程序怎样写?你会吗?
请问用matlab进行谐波分析,用的是fft加窗插值算法.加窗的程序我会写,插值的程序怎样写?你会吗?
%% Hanning FFT
hw=hann(N,'periodic');
Xh=fft(x.*hw');
Xh=Xh(1:N/2)*2;
Xhabs=abs(Xh);
for i= 1 :m
[Amax,index]=TriFind(Xhabs,floor((i*f0-15)/fsN),ceil((i*f0+15)/fsN)); % 搜索区域极大值及其下标
if(index==-1)
Fn(i,4) = 0;
An(i,4) = 0;
Pn(i,4) = 0;
else
% 下面是插值部分
if(Xhabs(index-1) > Xhabs(index+1))
a2 = Xhabs(index-1) / Xhabs(index);
r2 = (2-a2)/(1+a2);
k02 = index -1;
else
a2 = Xhabs(index) / Xhabs(index+1);
r2 = (2-a2)/(1+a2);
k02 = index;
end
Fn(i,4) = (k02+r2-1)*fs/N;
An(i,4) = 2*pi*r2*(1-r2*r2)*Xhabs(k02)/(N*sin(r2*pi));
Pn(i,4) = phase(Xh(k02))-pi*r2;
Pn(i,4) = mod(Pn(i,4),pi);
if(abs(r2)
再问: 你的 qq多少啊?求交流
再答: 我用消息给你了
再问: 我加你了
再答: 采纳一下啊,嘿嘿