您的位置:首页 > 编程语言 > MATLAB

MATLAB中高斯白噪声的产生

2020-07-19 04:44 489 查看
[code]Number = 100000;
noise = 1/sqrt(2)*randn(1,Number)+1j*1/sqrt(2)*randn(1,Number);
plot(abs(noise));
plot(real(noise));
mean(abs(noise))
mean(real(noise))

复高斯白噪声的产生

randn(1,Number)产生Number点均值为0,方差为1的高斯白噪声

代码中的1/sqrt(2)使得复高斯白噪声的方差(即功率为1)。

数学上看,noise=N(0,1)/sqrt(2)+j*N(0,1)/sqrt(2);   相加的两部分独立同分布(IID)

则E[noise] = 0 ; D[noise] = D[N(0,1)/sqrt(2)]+D[N(0,1)/sqrt(2)]=1/2+1/2=1

所以noise为复高斯白噪声

注意:从数学上看,abs(noise) = 两个独立的正态分布的平方和的开方。

,所以mean(abs(noise))不等于0。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: