如何用matlab产生高斯白噪声
时间: 2023-06-26 21:04:16 浏览: 107
高斯白噪声的matlab实现.docx
在MATLAB中产生高斯白噪声可以使用randn函数,该函数可以生成服从均值为0、方差为1的标准正态分布的随机数。通过对该随机数进行线性变换,可以产生具有不同均值和方差的高斯白噪声。
以下是一个生成均值为0、方差为1的高斯白噪声序列的示例代码:
```matlab
% 设置随机数种子,确保每次运行结果相同
rng(0);
% 生成长度为N的标准正态分布随机数
N = 1000;
x = randn(N, 1);
% 绘制随机数序列的直方图
histogram(x);
% 绘制随机数序列的时间序列图
plot(x);
```
如果需要产生均值为mu、方差为sigma2的高斯白噪声序列,可以通过线性变换实现:
```matlab
% 生成均值为mu、方差为sigma2的高斯白噪声序列
mu = 10;
sigma2 = 2;
y = mu + sqrt(sigma2) * x;
% 绘制随机数序列的直方图
histogram(y);
% 绘制随机数序列的时间序列图
plot(y);
```
其中,x为标准正态分布随机数序列,y为均值为mu、方差为sigma2的高斯白噪声序列。通过sqrt函数将方差转换为标准差,然后乘以x加上均值mu,即可得到具有指定均值和方差的高斯白噪声序列。
阅读全文