Public メソッド
クラス mist::uniform::random

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 の符号無し整数乱数発生

引数
[in]n… N の値
戻り値
0, 1, ... N-1 の符号無し整数乱数発生
void mist::uniform::random::init ( const unsigned long &  seed)
inline

seedで初期化

initializes vec_[n_] with a seed

引数
[in]seed… 乱数のseed

参照先 mist::dicom::UL.

void mist::uniform::random::init ( const array< unsigned long > &  seed_array)
inline

seed_arrayで初期化

initialize by an array with array-length seed_array is the array for initializing seeds array_length is its length

引数
[in]seed_array… 乱数のseed配列

参照先 mist::array< T, Allocator >::size(), と mist::dicom::UL.

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 の符号無し整数乱数発生

引数
[in]n… N の値
戻り値
0, 1, ... N-1 の符号無し整数乱数発生
double mist::uniform::random::real1 ( )
inline

[0,1]区間浮動小数点乱数の発生

generates a random number on [0,1]-real-interval

戻り値
[0,1]区間浮動小数点乱数

参照元 mist::machine_learning::adaboost::classifier< __WEAK_CLASSIFIER__ >::learn().

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分解能)

このクラスの説明は次のファイルから生成されました:

Generated on Wed Nov 12 2014 19:44:29 for MIST by doxygen 1.8.1.2