codistributed.sprandn
正規分布した疑似乱数値からなる対話型分散スパース配列を作成する
構文
CS = codistributed.sprandn(m,n,density)
CS = sprandn(n,codist)
説明
CS = codistributed.sprandn(m,n,density)
は、約 density*m*n
個の正規分布する double の非ゼロ要素をもつ m
行 n
列のスパース対話型分散配列を作成します。
codistributed.sprandn
のオプションの引数は、必須の引数の後に以下の順序で指定しなければなりません。
codist
— 作成する配列の分散スキームを指定する対話型分散オブジェクト。省略した場合、配列は既定の分散スキームを使用して分散されます。対話型分散オブジェクトの作成の詳細については、codistributor1d
およびcodistributor2dbc
のリファレンス ページを参照してください。'noCommunication'
— 配列の作成時にワーカー間の通信を行わないよう指定し、一部のエラー チェックの手順をスキップします。
CS = sprandn(n,codist)
は CS = codistributed.sprandn(n, codist)
と同じ結果になります。また、この構文でオプションの引数を使用することもできます。既定の分散スキームを使用するには、引数なしで対話型分散コンストラクターを指定します。以下に例を示します。
spmd CS = codistributed.sprandn(8,8,0.2,codistributor1d()); end
例
ワーカーを 4 つ使用する場合
spmd(4) CS = codistributed.sprandn(1000,1000,0.001); end
これは、約 1000 個の非ゼロ要素をもつ 1000 行 1000 列で double 型のスパース対話型分散配列 CS
を作成します。CS
は 2 番目の次元 (列) により分散され、各ワーカーには CS
の 1000 行 250 列のローカル ピースが格納されます。
spmd(4) codist = codistributor1d(2,1:spmdSize); CS = sprandn(10,10,0.1,codist); end
これは、約 10 個の非ゼロ要素をもつ 10 行 10 列で double 型の対話型分散配列 CS
を作成します。CS
は列によって分散され、各ワーカーには CS
の 10 行 spmdIndex
列のローカル ピースが格納されます。
ヒント
並列プールのワーカーで、つまり独立ジョブまたは通信ジョブで sprandn
を使用すると、各ワーカーで乱数発生器のシードが spmdIndex
またはタスク ID のみによって決まる値に設定されます。このため、各ワーカーの配列はそのジョブで一意となります。ただし、ジョブを繰り返すと同じ乱数データが得られます。
バージョン履歴
R2009b で導入
参考
sprandn
| rand
| randn
| sparse
| codistributed.speye
| codistributed.sprand
| distributed.sprandn