MTToolBox
0.2.10
|
疑似乱数生成器 [詳解]
#include <AbstractGenerator.hpp>
公開メンバ関数 | |
virtual | ~AbstractGenerator () |
仮想デストラクタ(必須) [詳解] | |
virtual U | generate ()=0 |
内部状態を次状態に遷移し、疑似乱数をひとつ出力する。 [詳解] | |
virtual void | seed (U value)=0 |
内部状態を初期化する。 [詳解] | |
virtual int | bitSize () const =0 |
内部状態空間のビットサイズを返す。 [詳解] | |
疑似乱数生成器
U | 疑似乱数生成器の出力の型 |
|
inlinevirtual |
仮想デストラクタ(必須)
|
pure virtual |
内部状態空間のビットサイズを返す。
内部状態空間のビットサイズ、つまりGF(2)線形空間の次元を返す。 メルセンヌツイスタのように欠けた配列を使用している場合は、実 際に使用されている部分のビットサイズを返すこと。
MTToolBox::MersenneTwister, MTToolBox::MersenneTwister64, MTToolBox::Sequential< T >で実装されています。
参照元 MTToolBox::AlgorithmEquidistribution< U, V >::AlgorithmEquidistribution(), MTToolBox::calcCharacteristicPolynomial(), MTToolBox::minpoly(), MTToolBox::AlgorithmBestBits< U, V >::operator()(), MTToolBox::AlgorithmRecursionAndTempering< U, V >::search().
|
pure virtual |
内部状態を次状態に遷移し、疑似乱数をひとつ出力する。
MTToolBox::MersenneTwister64, MTToolBox::MersenneTwister, MTToolBox::Sequential< T >で実装されています。
参照元 MTToolBox::minpoly().
|
pure virtual |
内部状態を初期化する。
初期化処理は、GF(2)線形である必要はなく、むしろ非GF(2)線形で あることが望ましい。ただし、MTToolBox による周期の計算や均等 分布次元の計算においては、初期化の結果内部状態がゼロでないと いうことだけが重要である。メルセンヌツイスタのように欠けた配 列を使用している場合は、実際に使用している部分がゼロでないよ うに初期化する必要がある。
[in] | value | 初期化の種 |
MTToolBox::MersenneTwister64, MTToolBox::MersenneTwister, MTToolBox::Sequential< T >で実装されています。