matlab 中产生高斯白噪声

一. matlab里和随机数有关的函数:
(1) rand:产生均值为0.5、幅度在0~1之间的伪随机数
(2) randn:产生均值为0、方差为1的高斯白噪声
(3) randperm(n):产生1到n的均匀分布随机序列
(4) normrnd(a,b,c,d):产生均值为a、方差为b大小为cXd的 随机矩阵
rand
rand(n):生成0到1之间的n阶随机数方阵
rand(m,n):生成0到1之间的m×n的随机数矩阵
randn
randn()命令是产生白噪声的,白噪声应该是0均值,方差为1的一组数,同rand有randn(n),randn(m,n)
rand是0-1的均匀分布,randn是均值为0方差为1的正态分布
二. 功能:生成服从正态分布的随机数
R=normrnd(MU,SIGMA)
R=normrnd(MU,SIGMA,m)
R=normrnd(MU,SIGMA,m,n)
说 明:
R=normrnd(MU,SIGMA):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的随机数。输入的向量或矩阵MU和SIGMA必须形式相同,输出R也和它们形式相同。标量输入将被扩展成和其它输入具有 相同维数的矩阵。
R=norrmrnd(MU,SIGMA,m):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的 随机数矩阵,矩阵的形式由m定义。m是一个1×2向量,其中的两个元素分别代表返回值R 中行与列的维数。
R=normrnd(MU,SIGMA,m,n): 生成m×n形式的正态分布的随机数矩阵。
R = normrnd(MU,SIGMA,m,n)
其中MU为均值,SIGMA为标准方差,m、n为矩阵大小;
三. 求出的计算结果可以验证如下:
a = [ 0.0579 0.1389 0.2722 0.4451
0.3529 0.2028 0.1988 0.9318
0.8132 0.1987 0.0153 0.4660
0.0099 0.6038 0.7468 0.4186];
b1 = var(a); % 默认来求
b2 = var(a, 0); % 默认的公式(用N-1)
c1 = var(a, 1); % 另外的公式(用N)
d1 = var(a, 0, 1); % 对每列操作
d2 = var(a, 0, 2); % 对每行操作
d3 = var(a'); % 检验
e = var(a(:)); % 通过直接访问矩阵的存储,来对矩阵进行操作,利用a(:)对矩阵得到所有元素的方差
b1
b1 =
0.1362 0.0457 0.0971 0.0601
b2
b2 =
0.1362 0.0457 0.0971 0.0601
c1
c1 =
0.1022 0.0343 0.0729 0.0450
d1
d1 =
0.1362 0.0457 0.0971 0.0601
d2
d2 =
0.0287
0.1208
0.1203
0.1021
d3
d3 =
0.0287 0.1208 0.1203 0.1021
e
e =
0.0819
  • 8
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值