Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1207278
  • 博文数量: 49
  • 博客积分: 10237
  • 博客等级: 上将
  • 技术积分: 2764
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-02 16:19
个人简介

满随天外云卷云舒 静观庭前花开花落

文章分类

全部博文(49)

文章存档

2013年(18)

2012年(9)

2011年(1)

2010年(5)

2009年(3)

2008年(13)

分类: IT职场

2013-06-28 18:27:57

 

% ----------------------------------------------------------------------------------------------------------------
%
方案1“x = a*cos(2*pi*w*t)”的形式:
% ----------------------------------------------------------------------------------------------------------------
%
注意:1.时域的持续时间范围应较大;
%            2.
频率w与序列k的对应关系(N为序列总长度):w = 1/dt * k/N;
%            3.
采样频率1/dt应大于 w 2
%            4.
结果曲线的峰值的横坐标对应的就是w-w
% ----------------------------------------------------------------------------------------------------------------
a = 0.75;
w = pi/3;
dt = 0.2;
t = [-30*pi:dt:30*pi];
N = size(t, 2);
x = a*cos(2*pi*w*t);
y = fft(x);
y = fftshift(y);
figure;
subplot(2,1,1);
plot(t,x);
subplot(2,1,2);
plot(1/dt*(-N/2+1:N/2)/N, abs(y));

% ----------------------------------------------------------------------------------------------------------------
%
方案2“x = a*cos(w*t)”的形式:
% ----------------------------------------------------------------------------------------------------------------
%
注意:1.时域的持续时间范围应较大;
%            2.
频率w与序列k的对应关系(N为序列总长度):w = 1/dt *2*pi* k/N;
%            3.
采样频率1/dt应大于 w/(2*pi) 2
%            4.
结果曲线的峰值的横坐标对应的就是w-w
% ----------------------------------------------------------------------------------------------------------------
a = 0.75;
w = pi/3;
dt = 1;
t = [-20*pi:dt:20*pi];
N = size(t, 2);
x = a*cos(w*t);
y = fft(x);
y = fftshift(y);
figure;
subplot(2,1,1);
plot(t,x);
subplot(2,1,2);
plot(1/dt*2*pi*(-N/2:N/2-1)/N, abs(y));

备注:由于使用了fftshift,所以得到的频谱序列关于原点对称,如果不需要负半轴的话自行修改一下就ok

阅读(6514) | 评论(0) | 转发(1) |
1

上一篇:Matlab编程实现FFT实践及频谱分析

下一篇:没有了

给主人留下些什么吧!~~