Matlab rng 命令的使用

rng Control the random number generator used by RAND, RANDI, and RANDN. 
rng(SD) seeds the random number generator using the non-negative integer SD so that RAND, RANDI, and RANDN produce a predictable sequence of numbers. 
如:

% Get generator settings.
s = rng;

% Call rand.
x = rand(2,3);

% Restore previous generator 
% settings.
rng(s);

% Call rand again and 
% get the same results.
y = rand(2,3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

得到的x与y是完全相同的(因为y与x是在同一个 random number generator里);再如:

% Get generator settings.
s = rng;

% Call rand.
x = rand(2,4)

% Restore previous generator 
% settings.
rng(s);

% Call rand again and 
% get the same results.
y = rand(3,2)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

得到的结果为

x =

    0.2760    0.6551    0.1190    0.9597
    0.6797    0.1626    0.4984    0.3404


y =

    0.2760    0.1626
    0.6797    0.1190
    0.6551    0.4984
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

对比可见,y是在x里面按列取值的。而

x = rand(2,3);
y = rand(2,3)
  • 1
  • 2

得到的x与y则是完全随机,即不相同的。 
更具体可参见help文件。

% 每次打开matlab之后生成相同的随机数,在rand一类的命令前加上以下两行命令
rng('default') % 每次打开matlab之后初始化到相同
rng(1) % 选择 seed
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值