博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
matlab sin函数 fft,matlab的fft函数的使用教程
阅读量:4962 次
发布时间:2019-06-12

本文共 796 字,大约阅读时间需要 2 分钟。

fs=1000;%对连续信号进行量化处理,即对原始信号进行采样,这里是采样率,单位Hz

ts=1/fs;%采样间隔

t=0:ts:1.3;

x=sin(2*pi*50*t)+sin(2*pi*300*t);

%y=@(t) sin(2*pi*50*t)+sin(2*pi*300*t);

f=x+3.5*randn(1,length(t));

subplot(411);plot(t,f);

ylabel('幅值');xlabel('时间');title('原始信号');

nfft= 2^nextpow2(length(f));%找出大于y的个数的最大的2的指数值

y=fft(f,nfft);%对f信号进行DFT,得到频率的幅值分布

p=y.*conj(y)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。

ff=fs*(0:nfft/2-1)/nfft;% F F T 变换后对应的频率的序列

subplot(412);plot(ff,p(1:nfft/2));

ylabel('功率谱密度');xlabel('频率');title('信号功率谱');

%------论坛上看到的求FFT的方法

subplot(413);plot(ff,abs(y(1:nfft/2)));%(用这个,先取点数后求模)

ylabel('幅值');xlabel('频率');title('单边幅频谱');

%------matlab例子的求FFT的方法

subplot(414);plot(ff,2*abs(y(1:nfft/2))/length(f));%(用这个,先取点数后求模)

ylabel('幅值');xlabel('频率');title('单边幅频谱');

%振幅的大小与所用DFT采样点数(nfft)有关,采用不同的DFT采样点数对同一信号,振幅是有不同的表现值

8c6d05b044097b4173ab27d2dfbc2511.png

转载地址:http://skhhp.baihongyu.com/

你可能感兴趣的文章
PCL 3维点云的模板匹配
查看>>
java XML解析成Map
查看>>
[bzoj1014][JSOI2008]火星人prefix
查看>>
1010 Radix:猥琐的测试数据
查看>>
JavaScript中函数和构造函数的区别
查看>>
数据结构学习(四) Java链表实现
查看>>
Hitachi Content Platform学习
查看>>
kubernetes1.3搭建dns服务
查看>>
【性能调优】一次关于慢查询及FGC频繁的调优经历
查看>>
Swift单例
查看>>
Qt之C语言类型typedef a[]等
查看>>
配置文件的格式选型
查看>>
树状打印二叉树
查看>>
常用Java排序算法
查看>>
python 之路 《三》列表与元组
查看>>
在Exchange 2013中重置用户密码
查看>>
day04作业
查看>>
Android中RelativeLayout各个属性的含义
查看>>
Leetcode-414 Third Maximum Number(第三大的数)
查看>>
Navicat http 通道增加验证
查看>>