MATLAB之rand系列函数使用方法小析

MATLAB之rand系列函数使用方法小析
必备知识:伪随机数是用确定性的算法计算出来自[0,1]均匀分布的随机数序列。并不真正的随机,但具有类似于随机数的统计特征,如均匀性、独立性等。在计算伪随机数时,若使用的初值(种子)不变,那么伪随机数的顺序也不变。
一.rand的使用
用途:产生(0,1)均匀分布的伪随机数
语法:1.产生(0,1)的随机数
X = rand;%返回一个在区间 (0,1) 内均匀分布的随机数
X = rand(N); %生成NxN的矩阵随机数,其中每个元素位于0~1之间
X = rand(M,N…,P)或X = rand([M,N…,P]);%生成一个MxNx…xP.的矩阵随机数
X = rand(___,typename);%生成typename类型的随机数,例如double
X = rand(___,‘like’,p);%返回由 p 等随机数组成的数组;也就是与 p 同一对象类型
2产生(a,b)的随机数
X= a + (b-a).rand(N,1) ;%生成区间 (a,b) 内的 N 个随机数
3产生随机复数
x = rand + i
rand ;%生成一个实部和虚部位于区间 (0,1) 内的随机复数
二.randn的使用
用途:生成服从均值为0,方差为1的正态分布的随机数。
语法:同rand函数。
三.randi的使用
用途:生成伪随机整数
语法:X= randi(N) ; % 生成1:N之间的均匀分布随机整数
X= randi(N,m,n) ; % 生成m×n的1:N之间的均匀分布随机整数
X= randi([M,N],m,n) ; % 生成m×n的M:N之间的均匀分布随机整数
四.特殊使用
1为了使程序每次运行生成的随机数一致,采用了以下形式:rand(‘state’,0):设置发生器的初始状态;
rand(‘state’,J):J为整数,设置发生器到J阶状态;
rand(‘seed’,0) 和rand(‘seed’,J)类似state的用法,使用的是随机数发生器。
2不建议对 rand 函数使用 ‘seed’、‘state’ 和 ‘twister’ 输入,改用 rng 函数。例如:
rng(‘default’);
X = rand(m,n); % 每次程序运行生成恒定的m×n随机数

备注:本人是在学习代码的时候遇到的有关seed的问题,索性对常见的产生随机数的函数总结了一下,不正确的地方欢迎交流指正,感谢。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值