当前位置: 首页 > news >正文

太原云起时网站建设百度指数大数据分享平台

太原云起时网站建设,百度指数大数据分享平台,大连建设工程信息网华宇凤凰城东侧市政管网配套工程,海外自建站基础知识 FFT即快速傅里叶变换,利用周期性和可约性,减少了DFT的运算量。常见的有按时间抽取的基2算法(DIT-FFT)按频率抽取的基2算法(DIF-FFT)。 1.利用自带函数fft进行快速傅里叶变换 若已知序列x[4,3,2,6…

基础知识
FFT即快速傅里叶变换,利用周期性和可约性,减少了DFT的运算量。常见的有按时间抽取的基2算法(DIT-FFT)按频率抽取的基2算法(DIF-FFT)。

1.利用自带函数fft进行快速傅里叶变换
若已知序列x=[4,3,2,6,7,8,9,0]x=[4,3,2,6,7,8,9,0]x=[4,3,2,6,7,8,9,0],求X(k)=DFT[x(n)]X(k)=DFT[x(n)]X(k)=DFT[x(n)]
代码非常简单,只有两行

x=[4,3,2,6,7,8,9,0];
xk=fft(x)

在这里插入图片描述
一般,对MATLAB而言,要想让它显示出结果,计算的部分不要加分号。
2.绘制128点DFT的幅频图
已知信号由15Hz幅值0.5的正弦信号和40Hz幅值2的正弦信号组成,数据采样频率为100Hz,试绘制N=128点DFT的幅频图。
关于下列代码的解释

f=(0:N-1)'*fs/N;

其中(0:N-1)'是生成了一个长度为N,间隔为1的列向量转置所得到的行向量。fs/N是指频域上的频率间隔。
若N点序列x(n)(n=0,1,…,N-1)是在采样频率fs(Hz)下获得的。它的FFT也是N点序列,即X(k)(k=0,1,…,N-1),则第K点对应实际频率值为:
f=k*fs/N

clc;
fs=100;
Ts=1/fs;%采样时间间隔
N=128;
n=0:N-1;
t=n*Ts;    %x不是直接关于n的函数,因为是固定的采样时间点
x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t);y=fft(x,N);
f=(0:N-1)'*fs/N;
stem(f,abs(y));

运行结果
在这里插入图片描述
同时也可以可看到这个幅度谱是关于fN对称的。
3.利用FFT进行功率谱的噪声分析
已知带有测量噪声信号x(t)=sin(2πf1t)+sin(2πf2t)+2w(t)x(t)=sin(2πf1t)+sin(2πf2t)+2w(t)x(t)=sin(2πf1t)+sin(2πf2t)+2w(t) 其中f1=50Hz,f2=120Hz, w(t)为均值为零、方差为1的随机信号,采样频率为1000Hz,数据点数N=512。试绘制信号的功率谱图。
下面先介绍几个基本的函数和知识:
conj(Y)
conj(Y) 是 MATLAB 中的一个函数,表示对 Y 中的每个元素取其共轭复数。如果 Y 是一个实数数组,则返回其本身。在信号处理中,常常使用共轭复数进行频域变换的处理。
求功率
P=Y.*conj(Y)/512;
注意这里是点乘啊。
在信号处理中,功率可以表示为信号的平均能量。对于一个离散时间信号,其能量可以表示为其幅度平方的总和,即:
E=∑n=0N−1∣x[n]∣2E = \sum_{n=0}^{N-1} |x[n]|^2 E=n=0N1x[n]2
其中,NNN 是信号的抽样点数,x[n]x[n]x[n] 是信号在时刻 nnn 的采样值。这里的 ∣x[n]∣2|x[n]|^2x[n]2 表示对 x[n]x[n]x[n] 取模长平方。
如果要计算信号的平均功率,可以将其总能量除以抽样点数,即:
P=EN=1N∑n=0N−1∣x[n]∣2P = \frac{E}{N} = \frac{1}{N} \sum_{n=0}^{N-1} |x[n]|^2 P=NE=N1n=0N1x[n]2
这里的 PPP 表示信号的功率。
在代码中,YYY 表示信号的离散傅里叶变换,即频域表示,其幅度 ∣Y∣|Y|Y 表示信号在每个频率分量上的贡献。为了计算信号的功率谱,需要将 YYY 变换为其幅度平方,即 ∣Y∣2|Y|^2Y2。由于 YYY 中包含了正频率和负频率的信息,因此需要对其进行共轭操作,即将负频率部分取共轭复数,然后再与正频率部分相乘,即 Y⋅conj⁡(Y)Y \cdot \operatorname{conj}(Y)Yconj(Y)。最后将结果除以抽样点数 NNN,即可得到功率谱 PPP
P=Y⋅conj⁡(Y)NP = \frac{Y \cdot \operatorname{conj}(Y)}{N} P=NYconj(Y)
这里的 PPP 是一个长度为 NNN 的向量,表示信号在每个频率分量上的功率。
randn
andn是MATLAB中的一个函数,用于生成一个均值为0,方差为1的标准正态分布随机数。例如,可以使用以下代码生成一个大小为3x3的标准正态分布随机矩阵:
A = randn(3,3);
完整代码

clc;
t=0:0.001:0.6;%设置步进与时间区间
x=sin(2*pi*50*t)+sin(2*pi*120*t);%根据已知写出信号的表达式
noise=randn(1,length(t));%生成均值为零、方差为1的随机信号,也就是噪声
y=x+noise;%带有噪声的信号
subplot(121);
plot(t,y);fs=1000;
Y=fft(y,512);%512点的FFT
P=Y.*conj(Y)/512;%求功率
f=(0:255)*fs/256%由上面的分析可知,频谱关于奈奎斯特频率对称,所以取其中一半
subplot(122);
plot(f,P(1:256))%功率随频率的变化,即功率谱图,绘制出一半

运行结果:
在这里插入图片描述
4.序列长度和FFT的长度对信号频谱的影响
已知信号 x(t)=0.5sin(2πf1t)+2sin(2πf2t)x(t)=0.5sin(2πf1t)+2sin(2πf2t)x(t)=0.5sin(2πf1t)+2sin(2πf2t)
其中f1=15Hz,f2=40Hz,采样频率为100Hz.
在下列情况下绘制其幅频谱。
有了前面的基础,这里就比较简单了
代码

nlength=32;
nfft1=32;
nfft2=128;
fs=100;
Ts=1/fs;
n=0:nlength-1;
t=n*Ts;x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t);y1=fft(x,nfft1);
f1=(0:31)*fs/32;
subplot(211);
Y1=abs(y1);
plot(f1(1:16),Y1(1:16));y2=fft(x,nfft2);
f2=(0:127)*fs/128;
subplot(212);
Y2=abs(y2);
plot(f2(1:64),Y2(1:64));

运行结果
在这里插入图片描述
结果分析
采样点数越多,其频谱越光滑。
注意
绘制图形的时候,一定要分析清楚是频谱图,还是某一个变换,其目的在于分清谁是因变量,谁是自变量。

http://www.khdw.cn/news/25448.html

相关文章:

  • 贵德县wap网站建设公司企业网上的推广
  • 南京做网站外包梁水才seo优化专家
  • 怎么在百度做广告百度seo优化教程免费
  • 信息平台网站建设世界新闻
  • dede5.7网站搬家网店推广实训报告
  • 用h5开发的网站模板头条搜索是百度引擎吗
  • 如何做一家门户网站推广赚钱软件
  • 建一个网站是不是要开公司神秘网站
  • 微站和网站数据seo关键词挖掘
  • 2018年网站设计公司手游推广去哪里找客源
  • wordpress添加变量郑州网站制作选择乐云seo
  • 江苏省示范校建设专题网站教程seo推广排名网站
  • web前端是网站开发师吗上海抖音seo公司
  • 石家庄网站搭建公司网站内容优化关键词布局
  • 烽火台网站陕西企业网站建设
  • wordpress默认上传路径太原百度快速优化排名
  • 合肥中小企业网站制作每天4元代发广告
  • 服务器放网站吗西安做网站
  • 展示型网站建设价格百度贴吧官网首页
  • 机械类外贸网站建设郑州模板网站建设
  • 线上咨询预约网站建设方案谷歌浏览器下载官方正版
  • 摄影作品网站app十大排名优化网站的软件下载
  • 南昌大型网站制作怎么做网站推广多少钱
  • 海外广告投放渠道营销池州网站seo
  • 在哪家网站做推广好网站设计报价方案
  • 如何做网站推广方案在线网站分析工具
  • 怎么做公众号教程免费百度seo引流
  • 长沙哪里可以做网站每日财经最新消息
  • 四川监狱网站建设软文300字介绍商品
  • 陕西省建设厅执业资格注册中心网站报名系统网络游戏推广员的真实经历