
上QQ阅读APP看书,第一时间看更新
14.rand函数
rand函数可产生0~1区间均匀分布的随机矩阵。函数的语法格式为:
X=rand:返回一个在区间(0,1)内均匀分布的随机数。
X=rand(n):返回一个n×n的随机数矩阵。
X=rand(sz1,…,szN):返回由随机数组成的sz1×…×szN矩阵,其中sz1,…,szN指示每个维度的大小,指定为包含整数值的单独参数。
· 如果任何维度的大小为0,则X为空数组。
· 如果任何维度的大小为负值,则其将被视为0。
· 对于第二个维度以上的维度,rand忽略大小为1的尾部维度。例如,rand(3,1,1,1)生成由随机数组成的3×1向量。
X=rand(sz):返回由随机数组成的数组,其中大小由向量sz指定。例如,rand([3 4])返回一个3×4的矩阵。
X=rand(____,typename):返回由typename数据类型的随机数组成的矩阵。typename输入可以是'single'或'double'。可以使用上述语法中的任何输入参数。
X=rand(___,'like',p):返回由p等随机数组成的矩阵,也就是与p同一对象类型。可以指定typename或'like',但不能同时指定两者。
注意:不建议对rand函数使用'seed'、'state'和'twister'输入,而是改用rng函数。
【例1-14】创建均匀分布的矩阵。
(1)生成一个由介于0和1之间的均匀分布的随机数组成的4×4矩阵。

(2)生成一个由区间(-4,4)内均匀分布的数字组成的10×1列向量。

一般来说,可以使用公式r=a+(b-a).∗rand(N,1)生成区间(a,b)内的N个随机数。