MatLab函数rand、randi、randn、rng

MatLab函数rand、randi、randn、rng

【注】详情请参阅 MatLab help 文档。

1. rand 函数1.1 作用rand 函数用于生成在区间 (0,1) 均匀分布的随机数。

1.2 语法代码语言:javascript复制X = rand % 返回一个均匀分布的随机数

X = rand(n) % 返回一个均匀分布的随机数矩阵(n x n)

X = rand(sz1,...,szN) % 返回由均匀分布的随机数组成的 sz1 x ... x szN 矩阵,其中 sz1,...,szN 依次为各维度大小

X = rand(sz) % 返回由均匀分布随机数组成大小由向量 sz 指定的随机数矩阵(矩阵大小 size(X) = sz)

X = rand(___,typename) % 在以上语法基础上,指定数据类型 typename(取值为 'single'|'double') 的均匀分布随机数

X = rand(___,'like',p) % 在以上语法基础上,指定随机数数据类型同数值数组 p 的数据类型(不能与 typename 同时使用)2. randi 函数2.1 作用randi 生成均匀分布的伪随机数整数。

2.2 语法代码语言:javascript复制X = randi(imax) % 返回一个在区间 [1,imax] 间的伪随机数整数标量

X = randi(imax,n) % 返回一个在区间 [1,imax] 间的伪随机数整数矩阵(n x n)

X = randi(imax,sz1,...,szN) % 返回一个在区间 [1,imax] 间的伪随机数整数矩阵(sz1 x ... x szN)

X = randi(imax,sz) % 返回一个一个在区间 [1,imax] 间的伪随机数整数矩阵(size(X) = sz)

X = randi(imax,classname) % 返回数据类型为 classname('single'|'double'|'int8'|'uint8'|'int16'|'uint16'|'int32'|'uint32')的伪随机整数

X = randi(imax,n,classname) % 返回数据类型为 classname 的伪随机整数矩阵(n x n)

X = randi(imax,sz1,...,szN,classname) % 返回数据类型为 classname 的伪随机整数矩阵(sz1 x ... x szN)

X = randi(iamx,sz,classname) % 返回数据类型为 classname 的伪随机整数矩阵(size(X) = sz)

X = randi(imax,'like',p) % 返回一个和 p 具有相同数据类型的伪随机整数

X = randi(imax,n,'like',p) % 返回一个和 p 具有相同数据类型的伪随机数矩阵(n x n)

X = randi(imax,sz1,...,szN,'like',p) % 返回一个和 p 具有相同数据类型的伪随机数矩阵(sz1 x ... x szN)

X = randi(imax,sz,'like',p) % 返回一个和 p 具有相同数据类型的伪随机数矩阵(size(X) = sz)

X = randi([imin,imax],___) % 使用以上任一语法,返回在区间 [imin,imax] 内的伪随机整数3. randn 函数3.1 作用randn 函数用于生成标准正态分布的随机数。

3.2 语法代码语言:javascript复制X = randn % 返回一个标准正态分布的随机数标量

X = randn(n) % 返回由标准正态分布的随机数矩阵(n x n)

X = randn(sz1,...,szN) % 返回由标准正态分布的随机数矩阵(sz1 x ... x szN)

X = randn(sz) % 返回由标准正态分布的随机数矩阵(size(X) = sz)

X = randn(___,typename) % 在上述语法基础上,指定随机数的数据类型 typename('single'|'double')

X = randn(___,'like',p) % 在上述语法基础上,指定随机数的数据类型同 p 的数据类型(不能与 typename 同时使用)4. rng 函数4.1 作用rng 函数用于控制随机数生成函数(rand、randi、randn)生成随机数。

4.2 语法代码语言:javascript复制rng(seed) % 使用非负整数 seed 为随机数生成函数(rand、randi、randn)提供种子。

rng('shuffle') % 根据当前时间为随机数生成函数提供种子

rng(seed,generator) % 在上述语法基础上指定随机数生成函数(rand、randi、randn)的随机数生成类型

rng('shuffle',generator) % 在上述语法基础上指定随机数生成函数(rand、randi、randn)的随机数生成类型

rng('default') % 将随机数生成函数(rand、randi、randn)的设置重置为默认值(seed = 0,generator = 'simdTwister')

scurr = rng % 返回随即上生成函数(rand、randi、randn)的当前设置

rng(s) % 将随机数生成函数设置还原回变量 s 指定的设置(s 为先前使用 s = rng 捕获的设置)

sprev = rng(___) % 在上述语法的基础上,先返回随机数生成函数的当前设置,再进行设置的修改generator 的可选值如下表:generator 取值

说明

‘twister’

Mersenne Twister

‘simdTwister’

面向 SIMD 的快速 Mersenne Twister 算法

‘combRecursive’

合并的多个递归

‘multFibonacci’

乘法滞后 Fibonacci

‘v5uniform’

传统 MatLab 5.0 均匀生成函数

‘v5normal’

传统 MatLab 5.0 正常生成函数

‘v4’

传统 MatLab 4.0 生成函数

相关文章

輕鬆掌握在線爲照片添加字幕的方法
28365-365体育备用

輕鬆掌握在線爲照片添加字幕的方法

⌛ 01-23 👁️ 838
关于 watchOS 11.3 的安全性内容
28365-365体育备用

关于 watchOS 11.3 的安全性内容

⌛ 08-18 👁️ 1126