MATLAB 随机数

MATLAB随机数生成器

使用rand, randnrandi函数来创建伪随机数序列,并使用randperm函数来创建随机排列的整数向量。使用rng函数来控制结果的可重复性。当需要对随机数生成进行更高级的控制时,使用RandStream类。


创建随机数

函数描述
rand均匀分布随机数
randn正态分布随机数
randi均匀分布的伪随机整数
randperm整数的随机排列

定义生成器参数

参数描述
rng控制随机数发生器
RandStream随机数流

默认随机数

默认情况下,rand返回从均匀分布中提取的规范化值(介于0和1之间),比如:


>> rand
ans =
    0.8147
>> rand
ans =
    0.9058

特定范围内的随机数

要将分布的范围更改为新的范围(a, b),将每个值乘以新范围的宽度(b – a),然后将每个值移动a。

首先,初始化随机数生成器,使本例中的结果可重复:


rng(0,'twister');

创建1000个随机值的向量。使用rand函数从开放区间(50,100)的均匀分布中提取值:


a = 50;
b = 100;
r = (b-a).*rand(1000,1) + a;

验证r中的值是否在指定的范围内:


r_range = [min(r) max(r)]
r_range =
   50.0261   99.9746

结果在开放区间(50,100) 内 。






公众号

关注公众号,获取一手资讯

“ MATLAB 随机数 ” comments 0

评论/回复

电子邮件地址不会被公开。 必填项已用*标注