声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 14491|回复: 13

[综合讨论] 白噪声功率谱密度小结

[复制链接]
发表于 2007-8-17 09:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
大家讨论了这么多的matlab生成白噪声的程序,关于白噪声功率谱密度强度的问题一直没搞清楚(我不是学电信专业的,对“wgn”中的几个单位也不是很熟悉,经过这几天的琢磨,现将matlab中两种生成白噪声的程序中的谱强度总结如下,不对之处,请多多指教。

randn命令,生成的白噪声的谱强度为1
randn.jpg
wgn---‘linear’能生成任意谱强度因子的白噪声,输入的数值即为谱强度因子
wgn1linear.jpg
wgn0.jpg

wgn---‘dbw’同randn,生成的白噪声的谱强度为1
wgn1dbw.jpg
0.01dbw.jpg
wgn---‘dbM’同randn,输入为1时,生成的白噪声的谱强度为0.0012,输入0.1时谱强度为0.001.
wgn1dbm.jpg 0.1dbm.JPG
所以,建议大家用wgn---‘linear’命令!

请大家多多讨论,互相学习,互相提高!!!

[ 本帖最后由 eight 于 2007-8-17 20:05 编辑 ]
0.01dbm.JPG

点评

赞成: 4.0
赞成: 4
  发表于 2015-2-6 21:42

评分

1

查看全部评分

回复
分享到:

使用道具 举报

发表于 2007-8-17 09:57 | 显示全部楼层
总结的确实很好!

有几个区别要注意:
1. rand产生的是均匀分布白噪声序列
2. randn产生的是正态分布的白噪声序列
3. WGN产生的是高斯白噪声序列

评分

1

查看全部评分

发表于 2007-11-30 12:47 | 显示全部楼层
请问下楼主,你的强度图是怎么做出来的呢?
怎么计算的强度?
我用功率谱估计的方法对产生的高斯白噪声求功率谱得到下图
幅度是0.32  不是你得到的1。所以我想问你下 你是怎么计算的强度。

                               
登录/注册后可看大图

以上的实现代码是
clear all;
close all;
clc
randn('state',0)%
y=wgn(1,200000,1,'linear');
yk=pburg(y,8,1024);
plot(yk)

或者
clear all;
close all;
clc
leng_num=200000;
x=randn(1,leng_num);
x=(x-mean(x))/std(x);
xk=pburg(x,8,1024);
plot(xk)

[ 本帖最后由 fuheshan 于 2007-11-30 14:40 编辑 ]
发表于 2009-9-9 21:15 | 显示全部楼层
原帖由 octopussheng 于 2007-8-17 09:57 发表
总结的确实很好!

有几个区别要注意:
1. rand产生的是均匀分布白噪声序列
2. randn产生的是正态分布的白噪声序列
3. WGN产生的是高斯白噪声序列


只用过 rand 和 randn,没有用过 WGN。
但,正态分布不就是高斯分布吗?
发表于 2012-12-7 00:16 | 显示全部楼层
我也算不出普强度为1,我用的pwelch方法
发表于 2012-12-11 11:16 | 显示全部楼层
本帖最后由 happy 于 2012-12-11 11:17 编辑
kyu16866 发表于 2012-12-7 00:16
我也算不出普强度为1,我用的pwelch方法

这里指的是信号强度,而不是功率谱密度具体可以看http://forum.chinavib.com/thread-31086-1-1.html
发表于 2012-12-12 00:42 | 显示全部楼层
本帖最后由 kyu16866 于 2012-12-12 00:44 编辑
happy 发表于 2012-12-11 11:16
这里指的是信号强度,而不是功率谱密度具体可以看http://forum.chinavib.com/thread-31086-1-1.html

信号的强度是一个值,就像您说提到的sigPower = sum(abs(sig(:)).^2))/length(sig(:))。我想知道为何第二副图中幅值也都在1左右?????
楼主提出的第二图,wgn(n,1,1,'linear'),信号强度是以watt为单位,所以例如y=wgn(1,2000,1,'linear');那么信号的能量sigpower确实是1左右。
window=hamming(512);[Pxx,f]=pwelch(y,window,256,1024,10);plot(f,Pxx)得到的曲线应该是楼主的图,可幅值在0.3左右,不是1.即使改成plot(f,10*log10(Pxx)),单位为Y轴单位为dbw,值也在0以下。


后来我看到如果白噪声功率谱密度为1,那么它一个周期能量为2*pi,然后,y=wgn(1,2000,2*pi,'linear');window=hamming(1024);[Pxx,f]=pwelch(y,window,100,1024,10);figure;plot(f,Pxx),得到的曲线图如下,在1上下。为什么要把功率设置2*pi,这跟一个周期有什么关系? untitled.jpg

当均值为0,能量方差=均方差,就是功率谱密度积分/2pi,也跟这没关系呀!!!!求解释!!




QQ截图20121212004344.jpg
回复 支持 1 反对 0

使用道具 举报

发表于 2012-12-12 00:59 | 显示全部楼层
对一个randn,用randn(n,1)就能得到
NFFT=1024;           %NFFT为取样点数
    Fs=10000;             %Fs为取样频率     
    t=(0:NFFT-1)/Fs;         %时间
    y=randn(NFFT,1);   %产生高斯白噪声,
    figure(1);
    subplot(3,1,1);
plot(t,y);
grid on;
title('白噪声波形');
%计算白噪声的自相关系数
    [cory,lags]=xcorr(y,200,'unbiased');
    subplot(3,1,2);
    plot(lags,cory);        %自相关函数(无偏差的), cory为要求的自相关函数,lag为自相关函数的长度。
     title('白噪声相关数');
grid on;
     f=fft(cory);          %对自相关系数进行傅里叶变换
     k=abs(f);
    fl=(0:length(k)-1)*Fs/length(k);       %fl为fc的长度。
    subplot(3,1,3)
    plot(fl,k);
    grid on;      
title('白噪声功率谱谱');%谱值在1上下。
发表于 2012-12-12 01:00 | 显示全部楼层
untitled1.jpg
发表于 2012-12-12 01:02 | 显示全部楼层
fuheshan 发表于 2007-11-30 12:47
请问下楼主,你的强度图是怎么做出来的呢?
怎么计算的强度?
我用功率谱估计的方法对产生的高斯白噪声求 ...

说明,楼主提出的直接用wgn还是点问题。
发表于 2013-8-1 23:53 | 显示全部楼层
弱弱的问一句,正态分布的白噪声序列和高斯分布不是一回事吗?
回复 支持 1 反对 0

使用道具 举报

发表于 2014-12-19 14:54 | 显示全部楼层
谢谢分享!!
发表于 2015-7-20 17:53 | 显示全部楼层
1111111111111111111111111
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-2 21:28 , Processed in 0.089651 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表