MT(Mersenne Twister)法による一様乱数ジェネレータ
[詳細]
#include <random.h>
Public メソッド |
| | random () |
| | コンストラクタ
|
| | random (const unsigned long seed) |
| | コンストラクタ(seedで初期化)
|
| | random (const array< unsigned long > &seed_array) |
| | コンストラクタ(seed_arrayで初期化)
|
| void | init (const unsigned long &seed) |
| | seedで初期化
|
| void | init (const array< unsigned long > &seed_array) |
| | seed_arrayで初期化
|
| unsigned long | int32 () |
| | 32bit符号無し整数乱数の発生
|
| unsigned long | int31 () |
| | 31bit符号無し整数乱数の発生
|
| double | real1 () |
| | [0,1]区間浮動小数点乱数の発生
|
| double | real2 () |
| | [0,1)区間浮動小数点乱数の発生
|
| double | real3 () |
| | (0,1)区間浮動小数点乱数の発生
|
| double | res53 () |
| | [0,1)区間浮動小数点乱数の発生(53bit分解能)
|
| unsigned long | generate (const unsigned int n=0xffffffffUL) |
| | 0, 1, ... N-1 の符号無し整数乱数発生
|
| unsigned long | operator() (const unsigned int n=0xffffffffUL) |
| | 0, 1, ... N-1 の符号無し整数乱数発生
|
説明
MT(Mersenne Twister)法による一様乱数ジェネレータ
長周期, 高次元均等分布を持つ擬似乱数を生成する. 周期が2^19937-1で、623次元超立方体の中に 均等に分布することが証明されている.
このクラスは,MT法開発者によりCで書かれた乱数生成関数群(MT19937)をクラス化したものである.
MT法(MT19937)開発者のページ: http://www.math.keio.ac.jp/~matumoto/mt.html
コンストラクタとデストラクタ
| mist::uniform::random::random |
( |
| ) |
|
|
inline |
| mist::uniform::random::random |
( |
const unsigned long |
seed | ) |
|
|
inlineexplicit |
コンストラクタ(seedで初期化)
- 引数
-
| [in] | seed | … 乱数のseed(これを用いてジェネレータの状態を初期化する) |
| mist::uniform::random::random |
( |
const array< unsigned long > & |
seed_array | ) |
|
|
inlineexplicit |
コンストラクタ(seed_arrayで初期化)
- 引数
-
| [in] | seed_array | … 乱数のseed配列(これを用いてジェネレータの状態を初期化する) |
関数
| unsigned long mist::uniform::random::generate |
( |
const unsigned int |
n = 0xffffffffUL | ) |
|
|
inline |
0, 1, ... N-1 の符号無し整数乱数発生
- 引数
-
- 戻り値
- 0, 1, ... N-1 の符号無し整数乱数発生
| void mist::uniform::random::init |
( |
const unsigned long & |
seed | ) |
|
|
inline |
| void mist::uniform::random::init |
( |
const array< unsigned long > & |
seed_array | ) |
|
|
inline |
| unsigned long mist::uniform::random::int31 |
( |
| ) |
|
|
inline |
31bit符号無し整数乱数の発生
generates a random number on [0,0x7fffffff]-interval
- 戻り値
- 31bit符号無し整数乱数
| unsigned long mist::uniform::random::int32 |
( |
| ) |
|
|
inline |
32bit符号無し整数乱数の発生
generates a random number on [0,0xffffffff]-interval
- 戻り値
- 32bit符号無し整数乱数
参照先 mist::dicom::UL.
| unsigned long mist::uniform::random::operator() |
( |
const unsigned int |
n = 0xffffffffUL | ) |
|
|
inline |
0, 1, ... N-1 の符号無し整数乱数発生
- 引数
-
- 戻り値
- 0, 1, ... N-1 の符号無し整数乱数発生
| double mist::uniform::random::real1 |
( |
| ) |
|
|
inline |
| double mist::uniform::random::real2 |
( |
| ) |
|
|
inline |
[0,1)区間浮動小数点乱数の発生
generates a random number on [0,1)-real-interval
- 戻り値
- [0,1)区間浮動小数点乱数
| double mist::uniform::random::real3 |
( |
| ) |
|
|
inline |
(0,1)区間浮動小数点乱数の発生
generates a random number on (0,1)-real-interval
- 戻り値
- (0,1)区間浮動小数点乱数
| double mist::uniform::random::res53 |
( |
| ) |
|
|
inline |
[0,1)区間浮動小数点乱数の発生(53bit分解能)
generates a random number on [0,1) with 53-bit resolution
- 戻り値
- [0,1)区間浮動小数点乱数(53bit分解能)
このクラスの説明は次のファイルから生成されました: