#include <MixMaxRng.h>
클래스 | |
struct | rng_state_st |
Public 멤버 함수 | |
MixMaxRng (std::istream &is) | |
MixMaxRng () | |
MixMaxRng (long seed) | |
MixMaxRng (int rowIndex, int colIndex) | |
~MixMaxRng () | |
MixMaxRng (const MixMaxRng &rng) | |
MixMaxRng & | operator= (const MixMaxRng &rng) |
double | flat () |
void | flatArray (const int size, double *vect) |
void | setSeed (long seed, int dum=0) |
void | setSeeds (const long *seeds, int seedNum=0) |
void | saveStatus (const char filename[]="MixMaxRngState.conf") const |
void | restoreStatus (const char filename[]="MixMaxRngState.conf") |
void | showStatus () const |
operator double () | |
operator float () | |
operator unsigned int () | |
virtual std::ostream & | put (std::ostream &os) const |
virtual std::istream & | get (std::istream &is) |
virtual std::istream & | getState (std::istream &is) |
std::string | name () const |
std::vector< unsigned long > | put () const |
bool | get (const std::vector< unsigned long > &v) |
bool | getState (const std::vector< unsigned long > &v) |
bool | operator== (const HepRandomEngine &engine) |
bool | operator!= (const HepRandomEngine &engine) |
long | getSeed () const |
const long * | getSeeds () const |
정적 Public 멤버 함수 | |
static std::string | beginTag () |
static std::string | engineName () |
static HepRandomEngine * | newEngine (std::istream &is) |
static HepRandomEngine * | newEngine (const std::vector< unsigned long > &v) |
정적 Protected 멤버 함수 | |
static double | exponent_bit_32 () |
static double | mantissa_bit_12 () |
static double | mantissa_bit_24 () |
static double | mantissa_bit_32 () |
static double | twoToMinus_32 () |
static double | twoToMinus_48 () |
static double | twoToMinus_49 () |
static double | twoToMinus_53 () |
static double | nearlyTwoToMinus_54 () |
static bool | checkFile (std::istream &file, const std::string &filename, const std::string &classname, const std::string &methodname) |
Protected 속성 | |
long | theSeed |
const long * | theSeeds |
Private 타입 | |
typedef struct rng_state_st | rng_state_t |
Private 멤버 함수 | |
void | seed_uniquestream (myID_t clusterID, myID_t machineID, myID_t runID, myID_t streamID) |
void | seed_spbox (myuint_t) |
void | print_state () const |
myuint_t | precalc () |
myuint_t | get_next () |
double | get_next_float () |
MixMaxRng | Branch () |
void | BranchInplace (int id) |
MixMaxRng (myID_t clusterID, myID_t machineID, myID_t runID, myID_t streamID) | |
void | seed64 (myuint_t seedval) |
double | generate (int i) |
double | iterate () |
double | get_next_float_packbits () |
double | convert1double (myuint_t u) |
myuint_t | MOD_MULSPEC (myuint_t k) |
myuint_t | MULWU (myuint_t k) |
void | seed_vielbein (unsigned int i) |
myuint_t | iterate_raw_vec (myuint_t *Y, myuint_t sumtotOld) |
myuint_t | apply_bigskip (myuint_t *Vout, myuint_t *Vin, myID_t clusterID, myID_t machineID, myID_t runID, myID_t streamID) |
myuint_t | modadd (myuint_t foo, myuint_t bar) |
myuint_t | fmodmulM61 (myuint_t cum, myuint_t s, myuint_t a) |
정적 Private 멤버 함수 | |
static constexpr int | rng_get_N () |
static constexpr long long int | rng_get_SPECIAL () |
static constexpr int | rng_get_SPECIALMUL () |
Private 속성 | |
rng_state_t | S |
정적 Private 속성 | |
static const int | N = 17 |
static constexpr long long int | SPECIAL = ((N==17)? 0 : ((N==240)? 487013230256099140ULL:0) ) |
static constexpr long long int | SPECIALMUL = ((N==17)? 36: ((N==240)? 51 :53) ) |
static constexpr int | BITS =61 |
static constexpr myuint_t | M61 =2305843009213693951ULL |
static constexpr double | INV_M61 =0.43368086899420177360298E-18 |
static constexpr unsigned int | VECTOR_STATE_SIZE = 2*N+4 |
MixMaxRng.h 파일의 49 번째 라인에서 정의되었습니다.
|
private |
MixMaxRng.h 파일의 182 번째 라인에서 정의되었습니다.
CLHEP::MixMaxRng::MixMaxRng | ( | std::istream & | is | ) |
MixMaxRng.cc 파일의 66 번째 라인에서 정의되었습니다.
CLHEP::MixMaxRng::MixMaxRng | ( | ) |
MixMaxRng.cc 파일의 52 번째 라인에서 정의되었습니다.
다음을 참조함 : setSeed().
CLHEP::MixMaxRng::MixMaxRng | ( | long | seed | ) |
MixMaxRng.cc 파일의 59 번째 라인에서 정의되었습니다.
다음을 참조함 : seed, setSeed(), CLHEP::HepRandomEngine::theSeed.
CLHEP::MixMaxRng::~MixMaxRng | ( | ) |
MixMaxRng.cc 파일의 72 번째 라인에서 정의되었습니다.
CLHEP::MixMaxRng::MixMaxRng | ( | const MixMaxRng & | rng | ) |
MixMaxRng.cc 파일의 76 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
|
private |
|
private |
MixMaxRng.cc 파일의 616 번째 라인에서 정의되었습니다.
다음을 참조함 : fmodmulM61(), iterate_raw_vec(), modadd(), N, Y.
다음에 의해서 참조됨 : seed_uniquestream().
|
static |
MixMaxRng.cc 파일의 411 번째 라인에서 정의되었습니다.
|
private |
MixMaxRng.cc 파일의 748 번째 라인에서 정의되었습니다.
다음을 참조함 : BranchInplace(), CLHEP::MixMaxRng::rng_state_st::counter, iterate_raw_vec(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, tmp, CLHEP::MixMaxRng::rng_state_st::V.
MixMaxRng.cc 파일의 756 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, iterate_raw_vec(), M61, MIXMAX_MOD_MERSENNE, S, CLHEP::MixMaxRng::rng_state_st::sumtot, tmp, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : Branch().
|
staticprotectedinherited |
RandomEngine.cc 파일의 45 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : CLHEP::MTwistEngine::restoreStatus(), CLHEP::HepJamesRandom::restoreStatus(), CLHEP::Ranlux64Engine::restoreStatus(), CLHEP::RanshiEngine::restoreStatus(), CLHEP::RanecuEngine::restoreStatus(), CLHEP::DualRand::restoreStatus(), CLHEP::RanluxEngine::restoreStatus().
|
inlineprivate |
MixMaxRng.h 파일의 149 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : generate(), get_next_float_packbits().
|
static |
MixMaxRng.cc 파일의 261 번째 라인에서 정의되었습니다.
|
inlinestaticprotectedinherited |
|
inlinevirtual |
MixMaxRng.h 파일의 66 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, generate(), iterate(), N, S.
다음에 의해서 참조됨 : flatArray().
MixMaxRng.cc 파일의 700 번째 라인에서 정의되었습니다.
다음을 참조함 : M61, MASK32, CLHEP::s.
다음에 의해서 참조됨 : apply_bigskip(), MOD_MULSPEC().
|
private |
MixMaxRng.cc 파일의 281 번째 라인에서 정의되었습니다.
다음을 참조함 : convert1double(), CLHEP::MixMaxRng::rng_state_st::counter, INV_M61, S, CLHEP::MixMaxRng::rng_state_st::V, Z.
다음에 의해서 참조됨 : flat().
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 393 번째 라인에서 정의되었습니다.
다음을 참조함 : getState(), CLHEP::MarkerLen.
|
virtual |
|
private |
MixMaxRng.cc 파일의 526 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, iterate_raw_vec(), N, S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : get_next_float_packbits().
|
inlineprivate |
MixMaxRng.h 파일의 132 번째 라인에서 정의되었습니다.
다음을 참조함 : get_next_float_packbits().
|
private |
MixMaxRng.cc 파일의 556 번째 라인에서 정의되었습니다.
다음을 참조함 : convert1double(), get_next(), Z.
다음에 의해서 참조됨 : get_next_float().
|
inlineinherited |
RandomEngine.h 파일의 113 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::HepRandomEngine::theSeed.
|
inlineinherited |
RandomEngine.h 파일의 116 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::HepRandomEngine::theSeeds.
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 416 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, CLHEP::MarkerLen, precalc(), rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::HepRandomEngine::theSeed, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : get().
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 459 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, MASK32, precalc(), rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V, VECTOR_STATE_SIZE.
|
private |
MixMaxRng.cc 파일의 305 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, INV_M61, MIXMAX_MOD_MERSENNE, modadd(), MULWU(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V, Y.
다음에 의해서 참조됨 : flat().
MixMaxRng.cc 파일의 506 번째 라인에서 정의되었습니다.
다음을 참조함 : MIXMAX_MOD_MERSENNE, modadd(), MULWU(), N.
다음에 의해서 참조됨 : apply_bigskip(), Branch(), BranchInplace(), get_next().
|
inlinestaticprotectedinherited |
다음에 의해서 참조됨 : CLHEP::RanluxEngine::flat(), CLHEP::RanluxEngine::flatArray().
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
MixMaxRng.cc 파일의 481 번째 라인에서 정의되었습니다.
다음을 참조함 : fmodmulM61(), N, SPECIAL.
MixMaxRng.cc 파일의 716 번째 라인에서 정의되었습니다.
다음을 참조함 : MIXMAX_MOD_MERSENNE.
다음에 의해서 참조됨 : apply_bigskip(), iterate(), iterate_raw_vec().
MixMaxRng.cc 파일의 501 번째 라인에서 정의되었습니다.
다음을 참조함 : BITS, M61, SPECIALMUL.
다음에 의해서 참조됨 : iterate(), iterate_raw_vec().
|
inlinevirtual |
MixMaxRng.h 파일의 105 번째 라인에서 정의되었습니다.
|
inlinestaticprotectedinherited |
|
staticinherited |
RandomEngine.cc 파일의 89 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::EngineFactory::newEngine().
다음에 의해서 참조됨 : CLHEP::StaticRandomStates::restore().
|
staticinherited |
RandomEngine.cc 파일의 94 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::EngineFactory::newEngine().
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 341 번째 라인에서 정의되었습니다.
다음을 참조함 : G4AblaRandom::flat().
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 346 번째 라인에서 정의되었습니다.
다음을 참조함 : G4AblaRandom::flat().
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 351 번째 라인에서 정의되었습니다.
|
inlineinherited |
MixMaxRng.cc 파일의 84 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
|
inlineinherited |
|
private |
MixMaxRng.cc 파일의 544 번째 라인에서 정의되었습니다.
다음을 참조함 : MIXMAX_MOD_MERSENNE, N, S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : getState(), restoreStatus().
|
private |
MixMaxRng.cc 파일의 734 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : restoreStatus(), showStatus().
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 358 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::HepRandomEngine::theSeed, CLHEP::MixMaxRng::rng_state_st::V.
|
virtual |
CLHEP::HepRandomEngine(으)로부터 재구현되었습니다.
MixMaxRng.cc 파일의 376 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, MASK32, rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
|
virtual |
MixMaxRng.cc 파일의 127 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, fclose(), fin, M61, MIXMAX_ERROR_READING_STATE_CHECKSUM, MIXMAX_ERROR_READING_STATE_COUNTER, MIXMAX_ERROR_READING_STATE_FILE, precalc(), print_state(), rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
|
staticprivate |
MixMaxRng.cc 파일의 266 번째 라인에서 정의되었습니다.
다음을 참조함 : N.
다음에 의해서 참조됨 : getState(), print_state(), put(), restoreStatus(), saveStatus().
|
staticprivate |
MixMaxRng.cc 파일의 271 번째 라인에서 정의되었습니다.
다음을 참조함 : SPECIAL.
|
staticprivate |
MixMaxRng.cc 파일의 276 번째 라인에서 정의되었습니다.
다음을 참조함 : SPECIALMUL.
|
virtual |
MixMaxRng.cc 파일의 101 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, fclose(), rng_get_N(), S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
MixMaxRng.h 파일의 139 번째 라인에서 정의되었습니다.
다음을 참조함 : seed_uniquestream().
MixMaxRng.cc 파일의 582 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, M61, MIXMAX_MOD_MERSENNE, MIXMAX_SEED_WAS_ZERO, N, S, seed, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : setSeed().
|
private |
MixMaxRng.cc 파일의 609 번째 라인에서 정의되었습니다.
다음을 참조함 : apply_bigskip(), CLHEP::MixMaxRng::rng_state_st::counter, S, seed_vielbein(), CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : seed64(), setSeeds().
MixMaxRng.cc 파일의 562 번째 라인에서 정의되었습니다.
다음을 참조함 : CLHEP::MixMaxRng::rng_state_st::counter, N, S, CLHEP::MixMaxRng::rng_state_st::sumtot, CLHEP::MixMaxRng::rng_state_st::V.
다음에 의해서 참조됨 : seed_uniquestream().
MixMaxRng.cc 파일의 223 번째 라인에서 정의되었습니다.
다음을 참조함 : seed_spbox(), CLHEP::HepRandomEngine::theSeed.
다음에 의해서 참조됨 : MixMaxRng().
MixMaxRng.cc 파일의 234 번째 라인에서 정의되었습니다.
다음을 참조함 : MASK32, seed_uniquestream(), CLHEP::HepRandomEngine::theSeed, CLHEP::HepRandomEngine::theSeeds.
|
virtual |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
다음에 의해서 참조됨 : CLHEP::Ranlux64Engine::flat().
|
inlinestaticprotectedinherited |
|
staticprivate |
MixMaxRng.h 파일의 117 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : MULWU().
|
staticprivate |
MixMaxRng.h 파일의 119 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : generate(), iterate().
|
staticprivate |
MixMaxRng.h 파일의 118 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : BranchInplace(), fmodmulM61(), MULWU(), restoreStatus(), seed_spbox().
|
staticprivate |
MixMaxRng.h 파일의 51 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : apply_bigskip(), flat(), get_next(), iterate_raw_vec(), MOD_MULSPEC(), precalc(), rng_get_N(), seed_spbox(), seed_vielbein().
|
private |
MixMaxRng.h 파일의 183 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : Branch(), BranchInplace(), flat(), generate(), get_next(), getState(), iterate(), MixMaxRng(), operator=(), precalc(), print_state(), put(), restoreStatus(), saveStatus(), seed_spbox(), seed_uniquestream(), seed_vielbein().
|
staticprivate |
MixMaxRng.h 파일의 114 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : MOD_MULSPEC(), rng_get_SPECIAL().
|
staticprivate |
MixMaxRng.h 파일의 115 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : MULWU(), rng_get_SPECIALMUL().
|
protectedinherited |
RandomEngine.h 파일의 143 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : CLHEP::DualRand::DualRand(), CLHEP::HepRandomEngine::getSeed(), CLHEP::MTwistEngine::getState(), CLHEP::Ranlux64Engine::getState(), CLHEP::HepJamesRandom::getState(), CLHEP::RanshiEngine::getState(), CLHEP::DualRand::getState(), CLHEP::RanecuEngine::getState(), CLHEP::RanluxEngine::getState(), getState(), CLHEP::HepJamesRandom::HepJamesRandom(), MixMaxRng(), CLHEP::MTwistEngine::put(), put(), CLHEP::RanecuEngine::put(), CLHEP::RanecuEngine::RanecuEngine(), CLHEP::RanluxEngine::RanluxEngine(), CLHEP::RanshiEngine::RanshiEngine(), CLHEP::MTwistEngine::restoreStatus(), CLHEP::HepJamesRandom::restoreStatus(), CLHEP::Ranlux64Engine::restoreStatus(), CLHEP::RanshiEngine::restoreStatus(), CLHEP::RanecuEngine::restoreStatus(), CLHEP::DualRand::restoreStatus(), CLHEP::RanluxEngine::restoreStatus(), CLHEP::MTwistEngine::saveStatus(), CLHEP::RanecuEngine::setIndex(), CLHEP::MTwistEngine::setSeed(), CLHEP::HepJamesRandom::setSeed(), CLHEP::Ranlux64Engine::setSeed(), CLHEP::RanecuEngine::setSeed(), CLHEP::DualRand::setSeed(), setSeed(), CLHEP::RanluxEngine::setSeed(), CLHEP::Ranlux64Engine::setSeeds(), CLHEP::RanshiEngine::setSeeds(), CLHEP::RanecuEngine::setSeeds(), setSeeds(), CLHEP::RanluxEngine::setSeeds(), CLHEP::MTwistEngine::showStatus(), CLHEP::HepJamesRandom::showStatus(), CLHEP::Ranlux64Engine::showStatus(), CLHEP::RanshiEngine::showStatus(), CLHEP::DualRand::showStatus(), CLHEP::RanecuEngine::showStatus(), CLHEP::RanluxEngine::showStatus().
|
protectedinherited |
RandomEngine.h 파일의 144 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : CLHEP::HepRandomEngine::getSeeds(), CLHEP::RanecuEngine::RanecuEngine(), CLHEP::RanecuEngine::setIndex(), CLHEP::RanecuEngine::setSeed(), CLHEP::MTwistEngine::setSeeds(), CLHEP::HepJamesRandom::setSeeds(), CLHEP::Ranlux64Engine::setSeeds(), CLHEP::RanecuEngine::setSeeds(), CLHEP::RanshiEngine::setSeeds(), CLHEP::DualRand::setSeeds(), CLHEP::RanluxEngine::setSeeds(), setSeeds().
MixMaxRng.h 파일의 120 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : getState().