如何在MATLAB里实现信号的快速傅里叶变换FFT
1个回答
展开全部
代码:
1 N=8; %原离散信号有8点
2 n=[0:1:N-1] %原信号是1行8列的矩阵
3 xn=0.5.^n; %构建原始信号,为指数信号
4
5 w=[-800:1:800]*4*pi/800; %频域共-800----+800 的长度(本应是无穷,高频分量很少,故省去)
6 X=xn*exp(-j*(n'*w)); %求dtft变换,采用原始定义的方法,对复指数分量求和而得
7 subplot(311)
8 stem(n,xn);
9 title('原始信号(指数信号)');
10 subplot(312);
11 plot(w/pi,abs(X));
12 title('DTFT变换')
1 N=8; %原离散信号有8点
2 n=[0:1:N-1] %原信号是1行8列的矩阵
3 xn=0.5.^n; %构建原始信号,为指数信号
4
5 w=[-800:1:800]*4*pi/800; %频域共-800----+800 的长度(本应是无穷,高频分量很少,故省去)
6 X=xn*exp(-j*(n'*w)); %求dtft变换,采用原始定义的方法,对复指数分量求和而得
7 subplot(311)
8 stem(n,xn);
9 title('原始信号(指数信号)');
10 subplot(312);
11 plot(w/pi,abs(X));
12 title('DTFT变换')
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询