MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MathCAD论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=36)
-   -   傅里叶谐波分析? (https://www.labfans.com/bbs/showthread.php?t=9431)

风声边剑 2009-08-12 20:12

傅里叶谐波分析?
 
大家好:
假如吧俩组数据导入mathcad,画出图形s(例如是1500个点),在进行fft的时候把点设置为1024,y=fft(s),进一步求出绝对值|y|,现在主要是横坐标的问题,根据f=length(y)=513,请问接下来要画出谐波波形,横坐标是f 吗?是不是还要经过一定的变化?如果这样觉得和matlab有点出入,不知道怎么办,请大家指教,谢谢!

cgfan 2009-08-21 14:31

回复: 傅里叶谐波分析?
 
假设你有两组数据{t}和{data}, 采样频率为fs的话, 可以这样处理

首先假设数据总个数为是2的正整数次方,此外系统变量ORIGIN=0

信号的频谱向量 F=FFT(data)

求取最后一个向量的个数N: N=last(data) (记住ORIGIN是0不是1哦)

然后定义下标变量i: i=1..N (不是0..N)

功率谱为 Power[SIZE="2"] i[/SIZE]=|F[SIZE="2"] i[/SIZE]|^2

那么用于作图的频率(Hz)定义为 freq[SIZE="2"] i[/SIZE]=fs*(i/N)

然后就是作图了. 一般如果低频成分多的话,可以分段作图,看频率会清楚一些,没必要把所有的自变量都做出来,否则看上去峰无法分开. 此外如果数据个数不是2的整数次方的话,用cfft, CFFT也可以,不过就要分析另外一半频谱了


所有时间均为北京时间。现在的时间是 12:09

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.