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) は、基になるクラスが double である n 行 n 列のスパース対話型分散配列を作成します。
CS = codistributed.speye(m,n) または CS = codistributed.speye([m,n]) は、基になるクラスが double である m 行 n 列のスパース対話型分散配列を作成します。
codistributed.speye のオプションの引数は、必須の引数の後に以下の順序で指定しなければなりません。
codist— 作成する配列の分散スキームを指定する対話型分散オブジェクト。省略した場合、配列は既定の分散スキームを使用して分散されます。対話型分散オブジェクトの作成の詳細については、codistributor1dおよびcodistributor2dbcのリファレンス ページを参照してください。'noCommunication'— 配列の作成時にワーカー間の通信を行わないよう指定し、一部のエラー チェックの手順をスキップします。
CS = speye(n,codist) は CS = codistributed.speye(n,codist) と同じ結果になります。また、この構文でオプションの引数を使用することもできます。既定の分散スキームを使用するには、引数なしで対話型分散コンストラクターを指定します。以下に例を示します。
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 より前: 基になるクラスが logical であるスパース対話型分散配列を作成するには、まず基になるクラスが double である配列を作成し、関数 logical を使用してそれをキャストします。
CLS = logical(speye(m,n,codistributor1d))
例
ワーカーを 4 つ使用して、2 番目の次元 (列) で分散される 1000 行 1000 列で double 型のスパース対話型分散配列 CS を作成します。各ワーカーには CS の 1000 行 250 列のローカル ピースが格納されます。
spmd(4) CS = speye(1000,codistributor) end
列により分散される 10 行 10 列で double 型のスパース対話型分散配列 CS を作成します。各ワーカーには、CS の 10 行 spmdIndex 列のローカル ピースが格納されます。
spmd(4) codist = codistributor1d(2,1:spmdSize); CS = speye(10,10,codist); end
500 行 500 列で単精度のスパース対話型分散配列を作成します。
spmd(6) SD = codistributed.speye(500,500,"single"); end