fjh009003 发表于 2006-5-18 16:54

[求助]有关噪声的功率普

请问,我测的一组噪声,用什么命令可以得到噪声的功率普呢?<BR>谢谢了!!!

yangzj 发表于 2006-5-18 17:14

<P>(abs(fft(x))).^2</P>

fjh009003 发表于 2006-5-18 21:06

谢谢yangzj!!!
x代表的是一个数组吗?

yangzj 发表于 2006-5-18 21:08

对,一个序列

zhengdan66 发表于 2006-5-18 21:21

<P>应该再除以序列的长度把</P>

yangzj 发表于 2006-5-18 21:26

确实
(abs(fft(x,N))/N).^2
N为做谱点数

happy 发表于 2006-5-18 21:26

回复:(fjh009003)[求助]有关噪声的功率普

<P>最简单的用psd</P>

yangzj 发表于 2006-5-18 21:27

单边谱应是
(abs(fft(x,N))/N*2).^2

fjh009003 发表于 2006-5-18 22:10

=size(pp); ttt=pp(:,181);
u=std(ttt); v=mean(ttt);
for i=1:m, glpn(i)=ttt(i)-v; end
(abs(fft(glpn)))^2;
这是我求功率普的程序,最后一行报错,我想把这个功率普曲线画出来,该怎么实现?谢谢happy教授和yangzj兄!!!

在我的程序中试过了,编译仍然错误!

教授,如何来使用这个命令,请您说的明白点,我才是高中生!

[ 本帖最后由 ChaChing 于 2009-7-12 18:20 编辑 ]

zhengdan66 发表于 2006-5-18 22:18

看看
(abs(fft(x,N))).^2/N

fjh009003 发表于 2006-5-18 22:22

现在可以编译通过了,但是matlab没有反应,不能绘制曲线,如何才能把曲线给绘出来,谢谢zhengdan66!!

fjh009003 发表于 2006-5-18 22:31

回复:(fjh009003)现在可以编译通过了,但是matlab没...

刚才是我的错误,是忘了在括号外面加点,改正后,便已通过。用plot可以得到曲线!
这是我用刚才的程序得到的功率普曲线,请大家看看不会有什么错误吧,这样的曲线我是不是可以把它看作是白噪声呢?

fjh009003 发表于 2006-5-18 22:34

白噪声的功率普是一条直线,我想利用这个特点来判断是不是白噪声,不知道可行否?因为白噪声实际上是不存在的,只能近似认为,我以前没见过近似白噪声是什么样子,大家多加指点!!

我用的是这种方法,我想知道为什么要N*2,这是什么意思?我又用(abs(fft(x,N))/N).^2试了一下,发现结果并没有什么差别,比较疑惑,请指教!
谢谢yangzj!!

[ 本帖最后由 ChaChing 于 2009-7-12 18:22 编辑 ]

yangzj 发表于 2006-5-19 09:16

除N和除N再乘2肯定有区别吧,在数量上差了4倍呀.
除即是除以做谱点数才能使频率所对应的功率为实际的功率.
再乘2是因为有负频率成分,而实数序列的正负频率是对称的,把负频率加到正频率上就乘个2

你现在画的是FFT结果的全部,实际上只画一半就行,前一半代表正频率,后一半代表负频率.
也很明显的能看出正负频率的对称性

[ 本帖最后由 ChaChing 于 2009-7-12 18:23 编辑 ]

fjh009003 发表于 2006-5-19 16:06

谢谢yangzj!!!!
现在可以用这个图形来说民噪声是白噪声吗?
页: [1] 2
查看完整版本: [求助]有关噪声的功率普