rand
创建均匀分布的随机数的协同分布数组
语法
说明
创建一个 cR
= rand(n
,codist
)n
×n
的均匀分布随机数共分布矩阵,并使用 codist
来指定数组值在各个工作进程之间的分布。cR
中的每个元素介于 0 和 1 之间。
将 codist
指定为 "codistributed"
以使用默认的 codistributor1d
分发方案或者由 codistributor1d
或 codistributor2dbc
对象定义的分发方案。
当您在通信作业或 spmd
代码块中创建协同分布数组时,该函数会在每个工作进程上创建一个数组。如果您在通信作业或 spmd
代码块之外创建协同分布数组,则该数组仅存储在创建该协同分布数组的工作进程或客户端上。
默认情况下,协同分布数组具有底层类型 double
。
创建一个 cR
= rand(sz1,...,szN
,codist
)sz1
-by-...-by-szN
共分布的均匀分布随机数组,其中 sz1,...,szN
表示每个维度的大小。
创建一个均匀分布的随机数的协同分布数组,而不使用工作进程之间的通信。 cR
= rand(___,"noCommunication")
当您创建非常大的数组或者您的通信作业或 spmd
代码块使用许多工作进程时,工作进程之间的通信可能会减慢数组的创建速度。使用此语法可以减少工作进程之间的通信所需的时间来提高代码的性能。
提示
当您使用此语法时,会跳过一些错误检查步骤。在对代码进行原型设计后(无需指定 "noCommunication"
),使用此语法可以提高代码的性能。
您必须在大小、数据类型和 codist
参量后指定 "noCommunication"
。
使用数组 cR
= rand(___,like=p
)p
来创建均匀分布的随机数的协同分布数组。您还可以指定 "noCommunication"
作为函数调用的一部分。
返回的数组 cR
具有与 p
相同的基础类型、稀疏性和复杂度(实数或复数)。
示例
输入参数
版本历史记录
在 R2006b 中推出