wxlwxl08 发表于 2009-5-31 17:59

关于FFT频谱的细化谱,请高手帮忙

本帖最后由 wdhd 于 2016-9-18 13:59 编辑

  N=5120;
  f=5120;
  n=0:(N-1);
  t=n/f;
  x=sin(2*pi*50*t);
  X=fft(x);
  f=f*(0:N-1)/N;
  % 被修改
  subplot(2,1,1);
  plot(f,abs(X)*2/N,'-');
  % 被修改
  axis();
  % 被修改
  set(gca, 'XTickMode', 'manual', 'XTick', );
  xlabel('Frequency');
  ylabel('|F(k)|');
  grid on;
  f0=45;%移动的频率
  h=exp(-j*2*pi*f0*t);
  y=x.*h;%数字变频,把w=100点移动到原点
  y1=resample(y,1,10);%重新采样,采样频率为fs/N
  k1=0:1:511;
  h1=exp((j*2*pi*f0*k1)/512);
  y1=y1.*h1;%反移频,使得前后频率一致
  y1=abs(fft(y1));%快速傅里叶变换
  subplot(2,1,2);
  plot(k1,y1*2/512);
  % 被修改
  axis();
  % 被修改
  set(gca, 'XTickMode', 'manual', 'XTick', );
  title('细化10倍后的频率特性');
  xlabel('频率');
  ylabel('幅度值');
  grid on;
  请解释一下红色部分的程序。我看不懂。谢谢了

songzy41 发表于 2009-6-1 08:36

本帖最后由 wdhd 于 2016-9-18 13:59 编辑

原帖由 wxlwxl08 于 2009-5-31 17:59 发表
N=5120;
f=5120;
n=0:(N-1);
t=n/f;
x=sin(2*pi*50*t);
X=fft(x);
f=f*(0:N-1)/N;
% 被修改
subplot(2,1,1);
plot(f,abs(X)*2/N,'-');
% 被修改
axis();
% 被修改
set(gca, 'XTickMode',...
LZ的红色部分主要对细化的原理不了解,建议LZ看一下王济和胡晓编的“ MATLAB在振动信号处理中的应用”(中国水利水电出版社)中有关ZOOM-FFT的有关部分,或高怀纲 “一种分析频谱局部特性的快速算法” 火控雷达技术 1999年9月

wxlwxl08 发表于 2009-6-1 12:04

回复 沙发 songzy41 的帖子

额,我去图书馆找找看。谢谢了,但我不一定能找到。大侠,你能不能给我解释一下呀?
页: [1]
查看完整版本: 关于FFT频谱的细化谱,请高手帮忙