ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

randi

ランダム整数の配列

構文

R = randi(valrange,sz,arraytype)
R = randi(valrange,sz,datatype,arraytype)

R = randi(valrange,sz,'like',P)
R = randi(valrange,sz,datatype,'like',P)

C = randi(valrange,sz,codist)
C = randi(valrange,sz,datatype,codist)
C = randi(valrange,sz,___,codist,'noCommunication')
C = randi(valrange,sz,___,codist,'like',P)

説明

R = randi(valrange,sz,arraytype) は、すべての要素が randi 整数値で、基になるクラスが double である行列を作成します。

R = randi(valrange,sz,datatype,arraytype) は、すべての要素が randi 値で、基になるクラスが datatype である行列を作成します。

配列のサイズと型は、次表に示した引数オプションで指定されます。

引数説明
valrangemax または [min max]1 から max まで、もしくは min から max までの範囲の整数値を指定します。
sznnn 列の行列としてサイズを指定します。
m,n または [m n]mn 列の行列としてサイズを指定します。
m,n,...,k または [m n ... k]m x n x ... x k の配列としてサイズを指定します。
arraytype'distributed'分散配列を指定します。
'codistributed'既定の分散スキームを使用して対話型分散配列を指定します。
'gpuArray'gpuArray を指定します。
datatype'double' (既定値)、'single''int8''uint8''int16''uint16''int32''uint32''int64' または 'uint64'配列の基になるクラス、すなわち、要素のデータ型を指定します。

R = randi(valrange,sz,'like',P) は、配列 P と同じ型と基になるクラス (データ型) をもつ randi 値の配列を作成します。

R = randi(valrange,sz,datatype,'like',P) は、指定された基になるクラス (datatype) をもち、配列 P と同じタイプの randiを作成します。

C = randi(valrange,sz,codist) または C = randi(valrange,sz,datatype,codist) は、指定されたサイズと基になるクラスをもつ、randi 値の対話型分散配列を作成します (既定の datatype'double')。対話型分散オブジェクト codist は、対話型分散配列を作成するための分散スキームを指定します。対話型分散オブジェクトの作成についての詳細は、codistributor1d および codistributor2dbc のリファレンス ページを参照してください。既定の分散スキームを使用する際に、引数なしで対話型分散コンストラクターを指定することができます。以下に例を示します。

spmd
    C = randi(8,codistributor1d());
end

C = randi(valrange,sz,___,codist,'noCommunication') は配列の作成時にワーカー間の通信を行わないよう指定し、一部のエラー チェックの手順をスキップします。

C = randi(valrange,sz,___,codist,'like',P) は、指定した範囲、サイズ、基になるクラスおよび分散スキームをもつ randi 値の対話型分散配列を作成します。クラスまたは対話型分散引数が省略された場合、特性は対話型分散配列 P から取得されます。

randi の分散行列の作成

基になるクラスが double であり、1000 行 1000 列で、randi 値が 1 から 100 までの分散配列を作成します。

D = randi(100,1000,'distributed');

randi の対話型分散行列の作成

2 番目の次元 (列) で分散され、1000 行 1000 列で double 型の randi 値が 0 から 12 までの対話型分散行列を作成します。

spmd(4)
    C = randi([0 12],1000,'codistributed');
end

4 つのワーカーがある場合、各ワーカーには C の 1000 行 250 列のローカル ピースが格納されます。

列で分散され、1000 行 1000 列で single 型の randi 値が 1 から 4 までの対話型分散行列を作成します。

spmd(4)
    codist = codistributor('1d',2,100*[1:numlabs]);
    C = randi(4,1000,1000,'single',codist);
end

各ワーカーには、C の 100 行 labindex 列のローカル ピースが格納されます。

randi の gpuArray行列の作成

基になるクラスが double で、randi 値が -50 から 50 までの 1000 行 1000 列の gpuArray を作成します。

G = randi([-50 50],1000,'double','gpuArray');

R2014a で導入