ドキュメンテーション

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

rng

構文

rng(sd)
rng('shuffle')
rng(sd, generator)
rng('shuffle', generator)
rng('default')
scurr = rng
rng(s)
sprev = rng(...)

説明

    メモ:    'seed''state'、または 'twister' 入力を使用する rand あるいは randn の代わりに、関数 rng を使用する場合は、「 rand と randn の非推奨構文の置換」に関するドキュメンテーションを参照してください。

randrandi、および randn が予測可能な数列を生成するように、rng(sd) は、負でない整数 sd を使用して乱数発生器にシードを指定します。

rng を呼び出すたびに randrandi、および randn が異なる数列を生成するように、rng('shuffle') は現在の時間に基づいて乱数発生器にシードを指定します。

rng(sd, generator)rng('shuffle', generator) は、randrandi、および randn で使用される乱数発生器のタイプを指定します。generator 入力は、以下のいずれかです。

発生器説明
'twister'メルセンヌ・ツイスター
'combRecursive'複数の再帰発生器の組み合わせ
'multFibonacci'乗法ラグ フィボナッチ
'v5uniform'レガシ MATLAB® 5.0 一様分布発生器
'v5normal'レガシ MATLAB 5.0 正規分布発生器
'v4'レガシ MATLAB 4.0 発生器

MATLAB の再起動時と同様に、同じ乱数が生成されるように、rng('default') は、randrandi、および randn で使用される乱数発生器の設定値を既定値にします。このリリースでは、既定の設定は、seed が 0 のメルセンヌ・ツイスターです。

scurr = rng は、randrandi、および randn で使用されている乱数発生器の現在の設定値を返します。設定値は、フィールド 'Type'、'Seed'、および 'State' をもつ構造体 scurr に返されます。

rng(s) は、randrandi、および randn で使用されている乱数発生器の設定値を、以前に s = rng などのコマンドで取得された値に戻します。

sprev = rng(...) は、設定を変更する前に、randrandi、および randn で使用されている乱数発生器の以前の設定値を返します。

例 1 - 発生器の設定の取得および復元

s の現在の発生器設定を保存します。

s = rng;

rand を呼び出して、乱数のベクトルを生成します。

x = rand(1,5)

x =

    0.8147    0.9058    0.1270    0.9134    0.6324

rng を呼び出して、発生器の元の設定を復元します。新しい乱数値の集合を生成し、xy が等しいことを確認します。

rng(s);
y = rand(1,5)

y =

    0.8147    0.9058    0.1270    0.9134    0.6324

例 2 - レガシ発生器の設定の復元

レガシ発生器を使用します。

sprev = rng(0,'v5uniform')

sprev = 
     Type: 'twister'
     Seed: 0
    State: [625x1 uint32]

x = rand

x =

    0.9501

以下のように、rng を呼び出して、前の設定を復元します。

rng(sprev)

参考

| | | |

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