ドキュメンテーション

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

RandStream コンストラクター

クラス

RandStream

構文

s = RandStream('gentype')
s = RandStream('gentype',Name,Value)

説明

s = RandStream('gentype') は、gentype で指定した一様な疑似乱数発生器アルゴリズムを使用する乱数ストリームを作成します。RandStream.list は、すべての可能な値を gentype に返します。発生器アルゴリズムの詳細は、「 乱数発生器の選択」を参照してください。

s = RandStream('gentype',Name,Value) により、ストリームの生成を制御するための 1 つまたは複数のオプション Name,Value の組み合わせを指定することが可能になります。

乱数を作成したら、関数 randrandi、および randn がグローバル ストリームから値を取得できるように RandStream.setGlobalStream を使用してグローバル ストリームにすることができます。

RandStream のパラメーターは以下のとおりです。

パラメーター説明
Seedすべてのストリームを初期化する非負のスカラー整数。現在の時間に基づく seed を作成するには、seed は 0 ~ 232 -1  の整数または 'shuffle' でなければなりません。既定の設定は 0 です。
NormalTransform正規分布から疑似乱数値を生成するために、randn(s, ...) が使用する変換アルゴリズム。使用可能な値は 'Ziggurat''Polar' または 'Inversion' です。

例 1

乱数ストリームを作成してそれをグローバル ストリームに指定し、randn の出力を再生するためにその状態を保存して復元する:

s = RandStream('mrg32k3a');
RandStream.setGlobalStream(s);
savedState = s.State;
z1 = randn(1,5)
z1 =
   -0.1894   -1.4426   -0.3592    0.8883   -0.4337
s.State = savedState;
z2 = randn(1,5)
z2 =
   -0.1894   -1.4426   -0.3592    0.8883   -0.4337

z2 は、z1 とまったく同じ値を含みます。

例 2

randrandi、および randn をこれらの既定の起動設定値に戻す:

s = RandStream('mt19937ar','Seed',0)
RandStream.setGlobalStream(s);

例 3

randrandi、および randn が、異なる MATLAB® セッションで異なる値を返すように、現在のグローバル乱数ストリームを seed が現在の時間に基づくストリームに置き換えます。この操作は、MATLAB が生成する乱数の統計的な特性に影響を与えることがあるため、MATLAB セッションごとに何度も実行することは望ましくありません。

s = RandStream('mt19937ar','Seed','shuffle');
RandStream.setGlobalStream(s);

詳細

すべて展開する

ヒント

  • RandStream を使用して作成されたストリームは、互いに独立ではない場合があります。独立した複数のストリームを作成するには、RandStream.create を使用します。

この情報は役に立ちましたか?