主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

codistributed.speye

创建共存分布式稀疏单位矩阵

语法

CS = codistributed.speye(n)
CS = codistributed.speye(m,n)
CS = codistributed.speye([m,n])
CS = speye(n,codist)
CS = speye(m,n,codist)
CS = speye([m,n],codist)
CS = codistributed.speye(___,typename)

说明

CS = codistributed.speye(n) 创建一个 n×n 的底层类 double 稀疏共存分布式数组。

CS = codistributed.speye(m,n)CS = codistributed.speye([m,n]) 创建一个 m×n 的底层类双精度稀疏共存分布式数组。

codistributed.speye 的可选参量必须在必需参量之后指定,并按照以下顺序指定:

  • codist - 指定结果数组的分布方案的协同分布器对象。如果省略,则使用默认分布方案分布数组。有关构造 codistributor 对象的信息,请参阅 codistributor1dcodistributor2dbc 的参考页。

  • 'noCommunication' - 指定在构造数组时不执行任何工作单元间的通信,从而跳过一些错误检查步骤。

CS = speye(n,codist)CS = codistributed.speye(n,codist) 相同。您还可以使用此语法的可选参量。要使用默认分布方案,请指定一个不带参量的 codistributor 构造函数。例如:

spmd
    CS = codistributed.speye(8,codistributor1d);
end

CS = speye(m,n,codist)CS = speye([m,n],codist) 分别与 CS = codistributed.speye(m,n)CS = codistributed.speye([m,n]) 相同。您还可以使用此语法的可选参量。

CS = codistributed.speye(___,typename) 还指定了之前任何语法中的数据类型(类)。typename 输入可以是 "single""double" (自 R2025a 起)

在 R2025a 之前的版本中: 要创建底层类逻辑的稀疏共存分布式数组,首先创建底层类 double 的数组,然后使用 logical 函数对其进行转换:

CLS = logical(speye(m,n,codistributor1d))

示例

使用四个工作单元,创建一个 1000×1000 的稀疏共存分布式双精度数组 CS,按其第二个维度(列)进行分布。每个工作单元包含一个 1000×250 的本地 CS 代码块。

spmd(4)
    CS = speye(1000,codistributor)
end

创建一个 10×10 的稀疏共存分布式双精度数组 CS,按列分布。每个工作单元包含一个 10×spmdIndex 的本地 CS 片段。

spmd(4)
    codist = codistributor1d(2,1:spmdSize);
    CS = speye(10,10,codist);
end

创建一个 500×500 的稀疏共存分布式单精度数组。

spmd(6)
SD = codistributed.speye(500,500,"single");
end

版本历史记录

在 R2009b 中推出

全部展开