我是靠谱客的博主 开心蜜蜂,最近开发中收集的这篇文章主要介绍matlab 正弦波 fft,【求助】正弦信号序列fft频谱分析!!!,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

就是正弦包含频率是20hz,20.5hz,40hz,采样频率fs是100hz,分析栅栏效应,先是128个点fft,补零到512个点进行fft,再512个点fft。程序是这样的:

N1=128;N2=512;

fs=100;f1=20;f2=20.5;f3=40;

n1=0:N1-1;n2=0:N2-1;

xn1=sin(2*pi*f1*n1/fs)+sin(2*pi*f2*n1/fs)+sin(2*pi*f3*n1/fs);

xk11=fft(xn1,N1)

mxk11=abs(xk11(1:N1/2));

figure(1);

subplot(211);plot(n1,xn1);

xlabel('n');title('x(n)   0<=n<127');axis([0,128,-3,3]);

k1=(0:N1/2-1)*fs/N1;

subplot(212)

plot(k1,mxk11);

xlabel('频率   单位Hz');title('X1(k)的幅度谱');

xn2=[xn1,zeros(1,N2-N1)];

xk12=fft(xn2,N2);

mxk12=abs(xk12(1:N2/2));

figure(2);

subplot(211);plot(n2,xn2);

xlabel('n');title('x(n)   0<=n<=511');axis([0,512,-3,3]);

k2=(0:N2/2-1)*fs/N2;

subplot(212);

plot(k2,mxk12);

xlabel('频率   单位Hz');title('x1(k)补零后的幅度谱');

xn3=sin(2*pi*f1*n2/fs)+sin(2*pi*f2*n2/fs)+sin(2*pi*f3*n2/fs);

xk2=fft(xn3,N2);

mxk3=abs(xk2(1:N2/2));

figure(3);

subplot(211);plot(n2,xn3);

xlabel('n');title('x(n) 0<=n=511');axis([0,512,-3,3]);

k3=(0:N2/2-1)*fs/N2;

subplot(212);

plot(k3,mxk3);

xlabel('频率 单位Hz');title('512点有效数据的幅度谱');

我看不懂的是

xk11=fft(xn1,N1)

mxk11=abs(xk11(1:N1/2));(这个是什么意思?)

和k1=(0:N1/2-1)*fs/N1;(为什么是二分之一得N1呢?)

最后

以上就是开心蜜蜂为你收集整理的matlab 正弦波 fft,【求助】正弦信号序列fft频谱分析!!!的全部内容,希望文章能够帮你解决matlab 正弦波 fft,【求助】正弦信号序列fft频谱分析!!!所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部