跳到主要内容

muRAND Device API 参考


目录​


Files​


Modules​


Class murand_device::mrg32k3a_engine​

Definition: murand\_mrg32k3a.h (line 63)

Inner classes​

Members​

Attributes​

Member m_state​

Definition: murand\_mrg32k3a.h (line 346)

mrg32k3a_state m_state

Type: mrg32k3a_state

Referenced by:

Friends​

Friend detail::engine_boxmuller_helper\< mrg32k3a_engine \>​

Definition: murand\_mrg32k3a.h (line 346)

Public functions​

Function mrg32k3a_engine​

FQUALIFIERS mrg32k3a_engine()

Return type: FQUALIFIERS

References:

Function mrg32k3a_engine​

FQUALIFIERS mrg32k3a_engine(const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset)

Initializes the internal state of the PRNG using seed value seed, goes to subsequence -th subsequence, and skips offset random numbers.

New seed value should not be zero. If seed_value is equal zero, value MURAND_MRG32K3A_DEFAULT_SEED is used instead.

A subsequence is 2^76 numbers long.

Parameters:

  • const unsigned long long seed
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS

References:

Function seed​

FQUALIFIERS void seed(unsigned long long seed_value, const unsigned long long subsequence, const unsigned long long offset)

Reinitializes the internal state of the PRNG using new seed value seed_value, skips subsequence subsequences and offset random numbers.

New seed value should not be zero. If seed_value is equal zero, value MURAND_MRG32K3A_DEFAULT_SEED is used instead.

A subsequence is 2^76 numbers long.

Parameters:

  • unsigned long long seed_value
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard​

FQUALIFIERS void discard(unsigned long long offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_subsequence​

FQUALIFIERS void discard_subsequence(unsigned long long subsequence)

Advances the internal state to skip subsequence subsequences. A subsequence is 2^76 numbers long.

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Function discard_sequence​

FQUALIFIERS void discard_sequence(unsigned long long sequence)

Advances the internal state to skip sequence sequences. A sequence is 2^127 numbers long.

Parameters:

  • unsigned long long sequence

Return type: FQUALIFIERS void

References:

Function restart​

FQUALIFIERS void restart(const unsigned long long subsequence, const unsigned long long offset)

Parameters:

  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Protected functions​

Function discard_impl​

FQUALIFIERS void discard_impl(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_subsequence_impl​

FQUALIFIERS void discard_subsequence_impl(unsigned long long subsequence)

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_sequence_impl​

FQUALIFIERS void discard_sequence_impl(unsigned long long sequence)

Parameters:

  • unsigned long long sequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state​

FQUALIFIERS void discard_state(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Private functions​

Function mod_mat_vec_m1​

FQUALIFIERS void mod_mat_vec_m1(const unsigned long long `A, unsigned int `s)

Parameters:

const unsigned long long A unsigned int s

Return type: FQUALIFIERS void

Function mod_mat_vec_m2​

FQUALIFIERS void mod_mat_vec_m2(const unsigned long long `A, unsigned int `s)

Parameters:

const unsigned long long A unsigned int s

Return type: FQUALIFIERS void

Function mod_mul_m1​

FQUALIFIERS unsigned long long mod_mul_m1(unsigned int i, unsigned long long j)

Parameters:

  • unsigned int i
  • unsigned long long j

Return type: FQUALIFIERS unsigned long long

Function mod_m1​

FQUALIFIERS unsigned long long mod_m1(unsigned long long p)

Parameters:

  • unsigned long long p

Return type: FQUALIFIERS unsigned long long

Function mod_mul_m2​

FQUALIFIERS unsigned long long mod_mul_m2(unsigned int i, unsigned long long j)

Parameters:

  • unsigned int i
  • unsigned long long j

Return type: FQUALIFIERS unsigned long long

Function mod_m2​

FQUALIFIERS unsigned long long mod_m2(unsigned long long p)

Parameters:

  • unsigned long long p

Return type: FQUALIFIERS unsigned long long


Class murand_device::mtgp32_engine​

Definition: murand\_mtgp32.h (line 130)

Members​

Attributes​

Member m_state​

Definition: murand\_mtgp32.h (line 257)

mtgp32_state m_state

Type: mtgp32_state

Referenced by:

Public functions​

Function mtgp32_engine​

FQUALIFIERS mtgp32_engine()

Return type: FQUALIFIERS

Function mtgp32_engine​

FQUALIFIERS mtgp32_engine(const mtgp32_state m_state, const mtgp32_kernel_params_t *params, int bid)

Parameters:

  • const mtgp32_state m_state const [mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) params
  • int bid

Return type: FQUALIFIERS

References:

Function ~mtgp32_engine​

FQUALIFIERS ~mtgp32_engine()

Return type: FQUALIFIERS

Function copy​

FQUALIFIERS void copy(const mtgp32_engine *m_engine)

Parameters:

const [mtgp32\_engine](#classmurand__device_1_1mtgp32__engine) m_engine

Return type: FQUALIFIERS void

References:

Function set_params​

FQUALIFIERS void set_params(mtgp32_kernel_params_t *params)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) params

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function next_single​

FQUALIFIERS unsigned int next_single()

Return type: FQUALIFIERS unsigned int

Function para_rec​

FQUALIFIERS unsigned int para_rec(mtgp32_kernel_params_t *k, unsigned int X1, unsigned int X2, unsigned int Y, int bid)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) k

  • unsigned int X1
  • unsigned int X2
  • unsigned int Y
  • int bid

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function temper​

FQUALIFIERS unsigned int temper(mtgp32_kernel_params_t *k, unsigned int V, unsigned int T, int bid)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) k

  • unsigned int V
  • unsigned int T
  • int bid

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function temper_single​

FQUALIFIERS unsigned int temper_single(mtgp32_kernel_params_t *k, unsigned int V, unsigned int T, int bid)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) k

  • unsigned int V
  • unsigned int T
  • int bid

Return type: FQUALIFIERS unsigned int

References:


Class murand_device::philox4x32_10_engine​

Definition: murand\_philox4x32\_10.h (line 63)

Inner classes​

Members​

Attributes​

Member m_state​

Definition: murand\_philox4x32\_10.h (line 288)

philox4x32_10_state m_state

Type: philox4x32_10_state

Referenced by:

Friends​

Friend detail::engine_boxmuller_helper\< philox4x32_10_engine \>​

Definition: murand\_philox4x32\_10.h (line 288)

Public functions​

Function philox4x32_10_engine​

FQUALIFIERS philox4x32_10_engine()

Return type: FQUALIFIERS

References:

Function philox4x32_10_engine​

FQUALIFIERS philox4x32_10_engine(const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset)

Initializes the internal state of the PRNG using seed value seed, goes to subsequence -th subsequence, and skips offset random numbers.

A subsequence consists of 2 ^ 66 random numbers.

Parameters:

  • const unsigned long long seed
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS

References:

Function seed​

FQUALIFIERS void seed(unsigned long long seed_value, const unsigned long long subsequence, const unsigned long long offset)

Reinitializes the internal state of the PRNG using new seed value seed_value, skips subsequence subsequences and offset random numbers.

A subsequence consists of 2 ^ 66 random numbers.

Parameters:

  • unsigned long long seed_value
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard​

FQUALIFIERS void discard(unsigned long long offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_subsequence​

FQUALIFIERS void discard_subsequence(unsigned long long subsequence)

Advances the internal state to skip subsequence subsequences, a subsequence consisting of 2 ^ 66 random numbers. In other words, this function is equivalent to calling discard 2 ^ 66 times without using the return value, but is much faster.

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Function restart​

FQUALIFIERS void restart(const unsigned long long subsequence, const unsigned long long offset)

Parameters:

  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function next4​

FQUALIFIERS uint4 next4()

Return type: FQUALIFIERS uint4

References:

Protected functions​

Function discard_impl​

FQUALIFIERS void discard_impl(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_subsequence_impl​

FQUALIFIERS void discard_subsequence_impl(unsigned long long subsequence)

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state​

FQUALIFIERS void discard_state(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Function interleave​

FQUALIFIERS uint4 interleave(const uint4 prev, const uint4 next) const

Parameters:

  • const uint4 prev
  • const uint4 next

Return type: FQUALIFIERS uint4

References:

Referenced by:

Function ten_rounds​

FQUALIFIERS uint4 ten_rounds(uint4 counter, uint2 key)

Parameters:

  • uint4 counter
  • uint2 key

Return type: FQUALIFIERS uint4

Referenced by:

Protected static functions​

Function bump_counter​

![][static]

static FQUALIFIERS uint4 bump_counter(uint4 counter)

Parameters:

  • uint4 counter

Return type: FQUALIFIERS uint4

Referenced by:

Private functions​

Function single_round​

FQUALIFIERS uint4 single_round(uint4 counter, uint2 key)

Parameters:

  • uint4 counter
  • uint2 key

Return type: FQUALIFIERS uint4

Function bumpkey​

FQUALIFIERS uint2 bumpkey(uint2 key)

Parameters:

  • uint2 key

Return type: FQUALIFIERS uint2


Class murand_device::scrambled_sobol32_engine​

Definition: murand\_scrambled\_sobol32.h (line 36)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member m_engine​

Definition: murand\_scrambled\_sobol32.h (line 77)

sobol32_engine<UseSharedVectors> m_engine

Type: sobol32_engine< UseSharedVectors >

Referenced by:

Member scramble_constant​

Definition: murand\_scrambled\_sobol32.h (line 79)

unsigned int scramble_constant

Type: unsigned int

Referenced by:

Public functions​

Function scrambled_sobol32_engine​

FQUALIFIERS scrambled_sobol32_engine()

Return type: FQUALIFIERS

Function scrambled_sobol32_engine​

FQUALIFIERS scrambled_sobol32_engine(const unsigned int *vectors, const unsigned int scramble_constant, const unsigned int offset)

Parameters:

const unsigned int vectors

  • const unsigned int scramble_constant
  • const unsigned int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned int current()

Return type: FQUALIFIERS unsigned int

References:


Class murand_device::scrambled_sobol64_engine​

Definition: murand\_scrambled\_sobol64.h (line 36)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member m_engine​

Definition: murand\_scrambled\_sobol64.h (line 79)

sobol64_engine<UseSharedVectors> m_engine

Type: sobol64_engine< UseSharedVectors >

Referenced by:

Member scramble_constant​

Definition: murand\_scrambled\_sobol64.h (line 81)

unsigned long long int scramble_constant

Type: unsigned long long int

Referenced by:

Public functions​

Function scrambled_sobol64_engine​

FQUALIFIERS scrambled_sobol64_engine()

Return type: FQUALIFIERS

Function scrambled_sobol64_engine​

FQUALIFIERS scrambled_sobol64_engine(const unsigned long long int *vectors, const unsigned long long int scramble_constant, const unsigned int offset)

Parameters:

const unsigned long long int vectors

  • const unsigned long long int scramble_constant
  • const unsigned int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned long long int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned long long int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned long long int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned long long int operator()()

Return type: FQUALIFIERS unsigned long long int

References:

Function next​

FQUALIFIERS unsigned long long int next()

Return type: FQUALIFIERS unsigned long long int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned long long int current()

Return type: FQUALIFIERS unsigned long long int

References:


Class murand_device::sobol32_engine​

Definition: murand\_sobol32.h (line 67)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Public types​

Typedef sobol32_state​

Definition: murand\_sobol32.h (line 69)

typedef struct sobol32_state< UseSharedVectors > sobol32_state

Return type: struct sobol32_state< UseSharedVectors >

Attributes​

Member m_state​

Definition: murand\_sobol32.h (line 164)

sobol32_state m_state

Type: sobol32_state

Referenced by:

Public functions​

Function sobol32_engine​

FQUALIFIERS sobol32_engine()

Return type: FQUALIFIERS

Function sobol32_engine​

FQUALIFIERS sobol32_engine(const unsigned int *vectors, const unsigned int offset)

Parameters:

const unsigned int vectors

  • const unsigned int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned int current()

Return type: FQUALIFIERS unsigned int

References:

Protected functions​

Function discard_state​

FQUALIFIERS void discard_state(unsigned int offset)

Parameters:

  • unsigned int offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state_power2​

FQUALIFIERS void discard_state_power2(unsigned int stride)

Parameters:

  • unsigned int stride

Return type: FQUALIFIERS void

References:

Referenced by:

Function rightmost_zero_bit​

FQUALIFIERS unsigned int rightmost_zero_bit(unsigned int x)

Parameters:

  • unsigned int x

Return type: FQUALIFIERS unsigned int

Referenced by:


Class murand_device::sobol64_engine​

Definition: murand\_sobol64.h (line 67)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Public types​

Typedef sobol64_state​

Definition: murand\_sobol64.h (line 69)

typedef struct sobol64_state< UseSharedVectors > sobol64_state

Return type: struct sobol64_state< UseSharedVectors >

Attributes​

Member m_state​

Definition: murand\_sobol64.h (line 169)

sobol64_state m_state

Type: sobol64_state

Referenced by:

Public functions​

Function sobol64_engine​

FQUALIFIERS sobol64_engine()

Return type: FQUALIFIERS

Function sobol64_engine​

FQUALIFIERS sobol64_engine(const unsigned long long int *vectors, const unsigned long long int offset)

Parameters:

const unsigned long long int vectors

  • const unsigned long long int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned long long int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned long long int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned long long int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned long long int operator()()

Return type: FQUALIFIERS unsigned long long int

References:

Function next​

FQUALIFIERS unsigned long long int next()

Return type: FQUALIFIERS unsigned long long int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned long long int current()

Return type: FQUALIFIERS unsigned long long int

References:

Protected functions​

Function discard_state​

FQUALIFIERS void discard_state(unsigned long long int offset)

Parameters:

  • unsigned long long int offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state_power2​

FQUALIFIERS void discard_state_power2(unsigned long long int stride)

Parameters:

  • unsigned long long int stride

Return type: FQUALIFIERS void

References:

Referenced by:

Function rightmost_zero_bit​

FQUALIFIERS unsigned int rightmost_zero_bit(unsigned long long int x)

Parameters:

  • unsigned long long int x

Return type: FQUALIFIERS unsigned int

Referenced by:


Class murand_device::xorwow_engine​

Definition: murand\_xorwow.h (line 83)

Inner classes​

Members​

Attributes​

Member m_state​

Definition: murand\_xorwow.h (line 224)

xorwow_state m_state

Type: xorwow_state

Referenced by:

Friends​

Friend detail::engine_boxmuller_helper\< xorwow_engine \>​

Definition: murand\_xorwow.h (line 224)

Public functions​

Function xorwow_engine​

FQUALIFIERS xorwow_engine()

Return type: FQUALIFIERS

Function xorwow_engine​

FQUALIFIERS xorwow_engine(const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset)

Initializes the internal state of the PRNG using seed value seed, goes to subsequence -th subsequence, and skips offset random numbers.

A subsequence is 2^67 numbers long.

Parameters:

  • const unsigned long long seed
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned long long offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_subsequence​

FQUALIFIERS void discard_subsequence(unsigned long long subsequence)

Advances the internal state to skip subsequence subsequences. A subsequence is 2^67 numbers long.

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Protected functions​

Function jump​

FQUALIFIERS void jump(unsigned long long v, const unsigned int jump_matrices[XORWOW_JUMP_MATRICES][XORWOW_SIZE])

Parameters:

  • unsigned long long v
  • const unsigned int jump_matrices

Return type: FQUALIFIERS void

References:

Referenced by:


File murand_discrete.h​

Location: murand\_discrete.h

Namespaces​

Includes​

Macros​

Functions​

Function murand_discrete​

Function murand_discrete4​

Function murand_discrete​

Function murand_discrete​

Function murand_discrete​

Function murand_discrete​

Function murand_discrete​

Function murand_discrete​

Function murand_discrete​


File murand_log_normal.h​

Location: murand\_log\_normal.h

Includes​

Macros​

Functions​

Function murand_log_normal​

Function murand_log_normal2​

Function murand_log_normal4​

Function murand_log_normal_double​

Function murand_log_normal2_double​

Function murand_log_normal4_double​

Function murand_log_normal​

Function murand_log_normal2​

Function murand_log_normal_double​

Function murand_log_normal2_double​

Function murand_log_normal​

Function murand_log_normal2​

Function murand_log_normal_double​

Function murand_log_normal2_double​

Function murand_log_normal​

Function murand_log_normal_double​

Function murand_log_normal​

Function murand_log_normal_double​

Function murand_log_normal​

Function murand_log_normal_double​

Function murand_log_normal​

Function murand_log_normal_double​

Function murand_log_normal​

Function murand_log_normal_double​


File murand_mrg32k3a.h​

Location: murand\_mrg32k3a.h

Classes​

Namespaces​

Includes​

  • murand_common.h
  • murand_mrg32k3a_precomputed.h

Included by​

Macros​

Macro MURAND_MRG32K3A_POW32​

#define MURAND_MRG32K3A_POW32 4294967296

Macro MURAND_MRG32K3A_M1​

#define MURAND_MRG32K3A_M1 4294967087

Macro MURAND_MRG32K3A_M1C​

#define MURAND_MRG32K3A_M1C 209

Macro MURAND_MRG32K3A_M2​

#define MURAND_MRG32K3A_M2 4294944443

Macro MURAND_MRG32K3A_M2C​

#define MURAND_MRG32K3A_M2C 22853

Macro MURAND_MRG32K3A_A12​

#define MURAND_MRG32K3A_A12 1403580

Macro MURAND_MRG32K3A_A13​

#define MURAND_MRG32K3A_A13 (4294967087 - 810728)

Macro MURAND_MRG32K3A_A13N​

#define MURAND_MRG32K3A_A13N 810728

Macro MURAND_MRG32K3A_A21​

#define MURAND_MRG32K3A_A21 527612

Macro MURAND_MRG32K3A_A23​

#define MURAND_MRG32K3A_A23 (4294944443 - 1370589)

Macro MURAND_MRG32K3A_A23N​

#define MURAND_MRG32K3A_A23N 1370589

Macro MURAND_MRG32K3A_NORM_DOUBLE​

#define MURAND_MRG32K3A_NORM_DOUBLE (2.3283065498378288e-10)

Macro MURAND_MRG32K3A_UINT_NORM​

#define MURAND_MRG32K3A_UINT_NORM (1.000000048661607)

Macro MURAND_MRG32K3A_DEFAULT_SEED​

#define MURAND_MRG32K3A_DEFAULT_SEED

Functions​

Function murand_init​

Function murand​

Function skipahead​

Function skipahead_subsequence​

Function skipahead_sequence​


File murand_mtgp32.h​

Location: murand\_mtgp32.h

Classes​

Namespaces​

Includes​

  • <stdlib.h>
  • murand.h
  • murand_common.h
  • musa.h
  • <stdio.h>

Included by​

Macros​

Macro MTGP_MEXP​

#define MTGP_MEXP 11213

Macro MTGP_N​

#define MTGP_N 351

Macro MTGP_FLOOR_2P​

#define MTGP_FLOOR_2P 256

Macro MTGP_CEIL_2P​

#define MTGP_CEIL_2P 512

Macro MTGP_TN​

#define MTGP_TN [MTGP\_FLOOR\_2P](#murand__mtgp32_8h_1ae1ed6237480db3b8978e8c59db64a823)

Macro MTGP_LS​

#define MTGP_LS ([MTGP\_TN](#murand__mtgp32_8h_1afec06a93335150763ecf5997518ca0db) * 3)

Macro MTGP_BN_MAX​

#define MTGP_BN_MAX 512

Macro MTGP_TS​

#define MTGP_TS 16

Macro MTGP_STATE​

#define MTGP_STATE 1024

Macro MTGP_MASK​

#define MTGP_MASK 1023

Functions​

Function murand​

FQUALIFIERS unsigned int murand(murandStateMtgp32_t *state)

Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range.

Generates and returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range using MTGP32 generator in state. State is incremented by one position.

Parameters:

  • state: - Pointer to a state to use

Returns:

Pseudorandom value (32-bit) as an unsigned int

Parameters:

murandStateMtgp32_t state

Return type: FQUALIFIERS unsigned int

References:

Function murandMTGP32BlockCopy​

FQUALIFIERS void murandMTGP32BlockCopy(murandStateMtgp32_t `src, murandStateMtgp32_t `dest)

Parameters:

murandStateMtgp32_t src murandStateMtgp32_t dest

Return type: FQUALIFIERS void

Function murandMTGP32SetParams​

FQUALIFIERS void murandMTGP32SetParams(murandStateMtgp32_t `state, mtgp32_kernel_params_t `params)

Changes parameters of a MTGP32 state.

Parameters:

  • state: - Pointer to a MTGP32 state
  • params: - Pointer to new parameters

Parameters:

murandStateMtgp32_t state mtgp32_kernel_params_t params

Return type: FQUALIFIERS void

Function murand_mtgp32_specific​

FQUALIFIERS unsigned int murand_mtgp32_specific(murandStateMtgp32_t *state, unsigned char index, unsigned char n)

Return 32-bits of pseudorandomness from a specific position in a mtgp32 generator.

Return 32-bits of pseudorandomness from position index of the mtgp32 generator in state, increment position of generator by n positions, which must be the total number of positions upddated in the state by the thread block, for this invocation.

Note : Thread indices must range from 0... n - 1. The number of positions updated may not exceed 256. A thread block may update more than one state, but a given state may not be updated by more than one thread block.

Parameters:

  • state: - Pointer to state to update
  • index: - Index (0..255) of the position within the state to draw from and update
  • n: - The total number of postions in this state that are being updated by this invocation

Returns:

32-bits of pseudorandomness as an unsigned int, all bits valid to use.

Parameters:

murandStateMtgp32_t state

  • unsigned char index
  • unsigned char n

Return type: FQUALIFIERS unsigned int

References:

Function murand_mtgp32_single​

FQUALIFIERS float murand_mtgp32_single(murandStateMtgp32_t *state)

Return a uniformly distributed float from a mtgp32 generator.

Return a uniformly distributed float between 0.0f and 1.0f from the mtgp32 generator in state, increment position of generator. Output range excludes 0.0f but includes 1.0f. Denormalized floating point outputs are never returned.

Note: This alternate derivation of a uniform float is provided for completeness with the original source

Parameters:

  • state: - Pointer to state to update

Returns:

uniformly distributed float between 0.0f and 1.0f

Parameters:

murandStateMtgp32_t state

Return type: FQUALIFIERS float

References:

Function murand_mtgp32_single_specific​

FQUALIFIERS float murand_mtgp32_single_specific(murandStateMtgp32_t *state, unsigned char index, unsigned char n)

Return a uniformly distributed float from a specific position in a mtgp32 generator.

Return a uniformly distributed float between 0.0f and 1.0f from position index of the mtgp32 generator in state, and increment position of generator by n positions, which must be the total number of positions upddated in the state by the thread block, for this invocation. Output range excludes 0.0f but includes 1.0f. Denormalized floating point outputs are never returned.

Note 1: Thread indices must range from 0...n - 1. The number of positions updated may not exceed 256. A thread block may update more than one state, but a given state may not be updated by more than one thread block.

Note 2: This alternate derivation of a uniform float is provided for completeness with the original source

Parameters:

  • state: - Pointer to state to update
  • index: - Index (0..255) of the position within the state to draw from and update
  • n: - The total number of postions in this state that are being updated by this invocation

Returns:

uniformly distributed float between 0.0f and 1.0f

Parameters:

murandStateMtgp32_t state

  • unsigned char index
  • unsigned char n

Return type: FQUALIFIERS float

References:


File murand_normal.h​

Location: murand\_normal.h

Namespaces​

Includes​

Included by​

Macros​

Functions​

Function murand_normal​

Function murand_normal2​

Function murand_normal4​

Function murand_normal_double​

Function murand_normal2_double​

Function murand_normal4_double​

Function murand_normal​

Function murand_normal2​

Function murand_normal_double​

Function murand_normal2_double​

Function murand_normal​

Function murand_normal2​

Function murand_normal_double​

Function murand_normal2_double​

Function murand_normal​

Function murand_normal_double​

Function murand_normal​

Function murand_normal_double​

Function murand_normal​

Function murand_normal_double​

Function murand_normal​

Function murand_normal_double​

Function murand_normal​

Function murand_normal_double​


File murand_philox4x32_10.h​

Location: murand\_philox4x32\_10.h

Classes​

Namespaces​

Includes​

  • murand_common.h

Included by​

Macros​

Macro MURAND_PHILOX_M4x32_0​

#define MURAND_PHILOX_M4x32_0 0xD2511F53U

Macro MURAND_PHILOX_M4x32_1​

#define MURAND_PHILOX_M4x32_1 0xCD9E8D57U

Macro MURAND_PHILOX_W32_0​

#define MURAND_PHILOX_W32_0 0x9E3779B9U

Macro MURAND_PHILOX_W32_1​

#define MURAND_PHILOX_W32_1 0xBB67AE85U

Macro MURAND_PHILOX4x32_DEFAULT_SEED​

#define MURAND_PHILOX4x32_DEFAULT_SEED

Functions​

Function murand_init​

Function murand​

Function murand4​

Function skipahead​

Function skipahead_subsequence​

Function skipahead_sequence​


File murand_poisson.h​

Location: murand\_poisson.h

Namespaces​

Includes​

Macros​

Functions​

Function murand_poisson​

Function murand_poisson4​

Function murand_poisson​

Function murand_poisson​

Function murand_poisson​

Function murand_poisson​

Function murand_poisson​

Function murand_poisson​

Function murand_poisson​


File murand_scrambled_sobol32.h​

Location: murand\_scrambled\_sobol32.h

Classes​

Namespaces​

Includes​

Included by​

Macros​

Functions​

Function murand_init​

Function murand​

Function skipahead​


File murand_scrambled_sobol64.h​

Location: murand\_scrambled\_sobol64.h

Classes​

Namespaces​

Includes​

Included by​

Macros​

Functions​

Function murand_init​

Function murand​

Function skipahead​


File murand_sobol32.h​

Location: murand\_sobol32.h

Classes​

Namespaces​

Includes​

  • murand_common.h

Included by​

Macros​

Functions​

Function murand_init​

Function murand​

Function skipahead​


File murand_sobol64.h​

Location: murand\_sobol64.h

Classes​

Namespaces​

Includes​

  • murand_common.h

Included by​

Macros​

Functions​

Function murand_init​

Function murand​

Function skipahead​


File murand_uniform.h​

Location: murand\_uniform.h

Classes​

Namespaces​

Includes​

Included by​

Macros​

Functions​

Function murand_uniform​

Function murand_uniform2​

Function murand_uniform4​

Function murand_uniform_double​

Function murand_uniform2_double​

Function murand_uniform4_double​

Function murand_uniform​

Function murand_uniform_double​

Function murand_uniform​

Function murand_uniform_double​

Function murand_uniform​

Function murand_uniform_double​

Function murand_uniform​

Function murand_uniform_double​

Function murand_uniform​

Function murand_uniform_double​

Function murand_uniform​

Function murand_uniform_double​

Function murand_uniform​

Function murand_uniform_double​


File murand_xorwow.h​

Location: murand\_xorwow.h

Classes​

Namespaces​

Includes​

  • murand_common.h
  • murand_xorwow_precomputed.h

Included by​

Macros​

Macro MURAND_XORWOW_DEFAULT_SEED​

#define MURAND_XORWOW_DEFAULT_SEED

Functions​

Function murand_init​

Function murand​

Function skipahead​

Function skipahead_subsequence​

Function skipahead_sequence​


Namespace murand_device::detail​

Definition: murand\_discrete.h (line 57)

Classes​

Variables​

Member lambda_threshold_small​

Definition: murand\_poisson.h (line 53)

constexpr double lambda_threshold_small = 64.0

Type: constexpr double

Referenced by:

Member lambda_threshold_huge​

Definition: murand\_poisson.h (line 54)

constexpr double lambda_threshold_huge = 4000.0

Type: constexpr double

Referenced by:

Functions​

Function discrete_alias​

FQUALIFIERS unsigned int discrete_alias(const double x, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

Referenced by:

Function discrete_alias​

FQUALIFIERS unsigned int discrete_alias(const unsigned int r, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function discrete_alias​

FQUALIFIERS unsigned int discrete_alias(const unsigned long r, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function discrete_alias​

FQUALIFIERS unsigned int discrete_alias(const unsigned long long int r, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function discrete_cdf​

FQUALIFIERS unsigned int discrete_cdf(const double x, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

Referenced by:

Function discrete_cdf​

FQUALIFIERS unsigned int discrete_cdf(const unsigned int r, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function discrete_cdf​

FQUALIFIERS unsigned int discrete_cdf(const unsigned long r, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function discrete_cdf​

FQUALIFIERS unsigned int discrete_cdf(const unsigned long long int r, const murandDiscreteDistribution_st &dis)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function box_muller​

FQUALIFIERS float2 box_muller(unsigned int x, unsigned int y)

Parameters:

Return type: FQUALIFIERS float2

References:

Referenced by:

Function box_muller​

FQUALIFIERS float2 box_muller(unsigned long long v)

Parameters:

Return type: FQUALIFIERS float2

References:

Function box_muller_double​

FQUALIFIERS double2 box_muller_double(uint4 v)

Parameters:

Return type: FQUALIFIERS double2

References:

Referenced by:

Function box_muller_double​

FQUALIFIERS double2 box_muller_double(ulonglong2 v)

Parameters:

Return type: FQUALIFIERS double2

References:

Function mrg_box_muller​

FQUALIFIERS float2 mrg_box_muller(unsigned int x, unsigned int y)

Parameters:

Return type: FQUALIFIERS float2

References:

Function mrg_box_muller_double​

FQUALIFIERS double2 mrg_box_muller_double(unsigned int x, unsigned int y)

Parameters:

Return type: FQUALIFIERS double2

References:

Function mu_f_erfinv​

FQUALIFIERS float mu_f_erfinv(float x)

Parameters:

Return type: FQUALIFIERS float

References:

Referenced by:

Function mu_d_erfinv​

FQUALIFIERS double mu_d_erfinv(double x)

Parameters:

Return type: FQUALIFIERS double

References:

Referenced by:

Function normal_distribution​

FQUALIFIERS float normal_distribution(unsigned int x)

Parameters:

Return type: FQUALIFIERS float

References:

Referenced by:

Function normal_distribution​

FQUALIFIERS float normal_distribution(unsigned long long int x)

Parameters:

Return type: FQUALIFIERS float

References:

Function normal_distribution2​

FQUALIFIERS float2 normal_distribution2(unsigned int v1, unsigned int v2)

Parameters:

Return type: FQUALIFIERS float2

References:

Referenced by:

Function normal_distribution2​

FQUALIFIERS float2 normal_distribution2(uint2 v)

Parameters:

Return type: FQUALIFIERS float2

Function normal_distribution2​

FQUALIFIERS float2 normal_distribution2(unsigned long long v)

Parameters:

Return type: FQUALIFIERS float2

Function normal_distribution4​

FQUALIFIERS float4 normal_distribution4(uint4 v)

Parameters:

Return type: FQUALIFIERS float4

References:

Referenced by:

Function normal_distribution4​

FQUALIFIERS float4 normal_distribution4(longlong2 v)

Parameters:

Return type: FQUALIFIERS float4

References:

Function normal_distribution4​

FQUALIFIERS float4 normal_distribution4(unsigned long long v1, unsigned long long v2)

Parameters:

Return type: FQUALIFIERS float4

References:

Function normal_distribution_double​

FQUALIFIERS double normal_distribution_double(unsigned int x)

Parameters:

Return type: FQUALIFIERS double

References:

Referenced by:

Function normal_distribution_double​

FQUALIFIERS double normal_distribution_double(unsigned long long int x)

Parameters:

Return type: FQUALIFIERS double

References:

Function normal_distribution2_double​

FQUALIFIERS double2 normal_distribution2_double(uint4 v)

Parameters:

Return type: FQUALIFIERS double2

Referenced by:

Function normal_distribution2_double​

FQUALIFIERS double2 normal_distribution2_double(ulonglong2 v)

Parameters:

Return type: FQUALIFIERS double2

Function mrg_normal_distribution2​

FQUALIFIERS float2 mrg_normal_distribution2(unsigned int v1, unsigned int v2)

Parameters:

  • unsigned int v1
  • unsigned int v2

Return type: FQUALIFIERS float2

References:

Referenced by:

Function mrg_normal_distribution2_double​

FQUALIFIERS double2 mrg_normal_distribution2_double(unsigned int v1, unsigned int v2)

Parameters:

Return type: FQUALIFIERS double2

References:

Referenced by:

Function mulhilo32​

FQUALIFIERS unsigned int mulhilo32(unsigned int x, unsigned int y, unsigned int &z)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function poisson_distribution_small​

FQUALIFIERS Result_Type poisson_distribution_small(State &state, double lambda)

Parameters:

Return type: FQUALIFIERS Result_Type

References:

Function lgamma_approx​

FQUALIFIERS double lgamma_approx(const double x)

Parameters:

Return type: FQUALIFIERS double

References:

Referenced by:

Function poisson_distribution_large​

FQUALIFIERS Result_Type poisson_distribution_large(State &state, double lambda)

Parameters:

Return type: FQUALIFIERS Result_Type

References:

Function poisson_distribution_huge​

FQUALIFIERS Result_Type poisson_distribution_huge(State &state, double lambda)

Parameters:

Return type: FQUALIFIERS Result_Type

References:

Function poisson_distribution​

FQUALIFIERS Result_Type poisson_distribution(State &state, double lambda)

Parameters:

Return type: FQUALIFIERS Result_Type

References:

Referenced by:

Function poisson_distribution_itr​

FQUALIFIERS Result_Type poisson_distribution_itr(State &state, double lambda)

Parameters:

Return type: FQUALIFIERS Result_Type

References:

Function poisson_distribution_inv​

FQUALIFIERS Result_Type poisson_distribution_inv(State &state, double lambda)

Parameters:

Return type: FQUALIFIERS Result_Type

References:

Referenced by:

Function uniform_distribution​

FQUALIFIERS float uniform_distribution(unsigned int v)

Parameters:

Return type: FQUALIFIERS float

References:

Referenced by:

Function uniform_distribution​

FQUALIFIERS float uniform_distribution(unsigned long long int v)

Parameters:

Return type: FQUALIFIERS float

References:

Function uniform_distribution4​

FQUALIFIERS float4 uniform_distribution4(uint4 v)

Parameters:

Return type: FQUALIFIERS float4

References:

Referenced by:

Function uniform_distribution4​

FQUALIFIERS float4 uniform_distribution4(ulonglong4 v)

Parameters:

Return type: FQUALIFIERS float4

References:

Function uniform_distribution_double​

FQUALIFIERS double uniform_distribution_double(unsigned int v)

Parameters:

Return type: FQUALIFIERS double

References:

Referenced by:

Function uniform_distribution_double​

FQUALIFIERS double uniform_distribution_double(unsigned int v1, unsigned int v2)

Parameters:

Return type: FQUALIFIERS double

References:

Function uniform_distribution_double​

FQUALIFIERS double uniform_distribution_double(unsigned long long int v)

Parameters:

Return type: FQUALIFIERS double

References:

Function uniform_distribution2_double​

FQUALIFIERS double2 uniform_distribution2_double(uint4 v)

Parameters:

Return type: FQUALIFIERS double2

References:

Referenced by:

Function uniform_distribution4_double​

FQUALIFIERS double4 uniform_distribution4_double(uint4 v1, uint4 v2)

Parameters:

Return type: FQUALIFIERS double4

References:

Referenced by:

Function uniform_distribution2_double​

FQUALIFIERS double2 uniform_distribution2_double(ulonglong2 v)

Parameters:

Return type: FQUALIFIERS double2

References:

Function uniform_distribution2_double​

FQUALIFIERS double2 uniform_distribution2_double(ulonglong4 v)

Parameters:

Return type: FQUALIFIERS double2

References:

Function uniform_distribution4_double​

FQUALIFIERS double4 uniform_distribution4_double(ulonglong4 v)

Parameters:

Return type: FQUALIFIERS double4

References:

Function mrg_uniform_distribution_uint​

FQUALIFIERS unsigned int mrg_uniform_distribution_uint(unsigned int v)=delete

Parameters:

Return type: FQUALIFIERS unsigned int

Function mrg_uniform_distribution_uint\< murandStateMRG32k3a_t \>​

FQUALIFIERS unsigned int mrg_uniform_distribution_uint< murandStateMRG32k3a_t >(unsigned int v)

Parameters:

Return type: FQUALIFIERS unsigned int

References:

Function mrg_uniform_distribution​

FQUALIFIERS float mrg_uniform_distribution(unsigned int v)=delete

Parameters:

Return type: FQUALIFIERS float

Function mrg_uniform_distribution\< murandStateMRG32k3a_t \>​

FQUALIFIERS float mrg_uniform_distribution< murandStateMRG32k3a_t >(unsigned int v)

Parameters:

Return type: FQUALIFIERS float

References:

Referenced by:

Function mrg_uniform_distribution_double​

FQUALIFIERS double mrg_uniform_distribution_double(unsigned int v)=delete

Parameters:

Return type: FQUALIFIERS double

Referenced by:

Function mrg_uniform_distribution_double\< murandStateMRG32k3a_t \>​

FQUALIFIERS double mrg_uniform_distribution_double< murandStateMRG32k3a_t >(unsigned int v)

Parameters:

Return type: FQUALIFIERS double

References:

Function copy_vec​

FQUALIFIERS void copy_vec(unsigned int `dst, const unsigned int `src)

Parameters:

[unsigned](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) [int](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) dst [const](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) [unsigned](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) [int](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) src

Return type: FQUALIFIERS void

References:

Referenced by:

Function mul_mat_vec_inplace​

FQUALIFIERS void mul_mat_vec_inplace(const unsigned int `m, unsigned int `v)

Parameters:

[const](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) [unsigned](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) [int](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) m [unsigned](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) [int](#namespacemurand__device_1_1detail_1af467985bc29f537fcfbac152a53c3e91) v

Return type: FQUALIFIERS void

References:

Referenced by:


Namespace murand_device​

Definition: murand\_discrete.h (line 56)

Child namespaces​

Classes​

Typedefs​

Typedef mtgp32_kernel_params_t​

Definition: murand\_mtgp32.h (line 98)

typedef mtgp32_params mtgp32_kernel_params_t

Return type: mtgp32_params

Typedef mtgp32_fast_params​

Definition: murand\_mtgp32.h (line 99)

typedef mtgp32_params_fast_t mtgp32_fast_params

Return type: mtgp32_params_fast_t

Functions​

Function murand_mtgp32_init_state​

void murand_mtgp32_init_state(unsigned int array[], const mtgp32_params_fast_t *para, unsigned int seed)

Parameters:

  • unsigned int array const [mtgp32\_params\_fast\_t](#structmtgp32__params__fast__t) para
  • unsigned int seed

Return type: void

References:


Structure mtgp32_params_fast_t​

Definition: murand\_mtgp32.h (line 70)

MTGP32 parameters. Some element is redundant to keep structure simple.

pos is a pick up position which is selected to have good performance on graphic processors. 3 < pos < Q, where Q is a maximum number such that the size of status array - Q is a power of 2. For example, when mexp is 44497, size of 32-bit status array is 696, and Q is 184, then pos is between 4 and 183. This means 512 parallel calculations is allowed when mexp is 44497.

poly_sha1 is SHA1 digest of the characteristic polynomial of state transition function. SHA1 is calculated based on printing form of the polynomial. This is important when we use parameters generated by the dynamic creator which

mask This is a mask to make the dimension of state space have just Mersenne Prime. This is redundant.

Members​

Attributes​

Member mexp​

Definition: murand\_mtgp32.h (line 71)

int mexp

Mersenne exponent. This is redundant.

Type: int

Referenced by:

Member pos​

Definition: murand\_mtgp32.h (line 72)

int pos

pick up position.

Type: int

Member sh1​

Definition: murand\_mtgp32.h (line 73)

int sh1

Shift value 1. 0 < sh1 < 32.

Type: int

Member sh2​

Definition: murand\_mtgp32.h (line 74)

int sh2

Shift value 2. 0 < sh2 < 32.

Type: int

Member tbl​

Definition: murand\_mtgp32.h (line 75)

uint32_t tbl[16][16]

A small matrix.

Type: uint32_t

Referenced by:

Member tmp_tbl​

Definition: murand\_mtgp32.h (line 76)

uint32_t tmp_tbl[16][16]

A small matrix for tempering.

Type: uint32_t

Member flt_tmp_tbl​

Definition: murand\_mtgp32.h (line 77)

uint32_t flt_tmp_tbl[16][16]

A small matrix for tempering and converting to float.

Type: uint32_t

Member mask​

Definition: murand\_mtgp32.h (line 79)

uint32_t mask

This is a mask for state space.

Type: uint32_t

Member poly_sha1​

Definition: murand\_mtgp32.h (line 80)

unsigned char poly_sha1[21][21]

SHA1 digest.

Type: unsigned char


Structure murand_device::detail::two_uints​

Definition: murand\_uniform.h (line 49)

Members​

Attributes​

Member x​

Definition: murand\_uniform.h (line 50)

unsigned int x

Type: unsigned int

Referenced by:

Member y​

Definition: murand\_uniform.h (line 51)

unsigned int y

Type: unsigned int

Referenced by:


Structure murand_device::mrg32k3a_engine::mrg32k3a_state​

Definition: murand\_mrg32k3a.h (line 65)

Members​

Attributes​

Member g1​

Definition: murand\_mrg32k3a.h (line 66)

unsigned int g1[3][3]

Type: unsigned int

Referenced by:

Member g2​

Definition: murand\_mrg32k3a.h (line 67)

unsigned int g2[3][3]

Type: unsigned int

Referenced by:

Member boxmuller_float_state​

Definition: murand\_mrg32k3a.h (line 75)

unsigned int boxmuller_float_state

Type: unsigned int

Referenced by:

Member boxmuller_double_state​

Definition: murand\_mrg32k3a.h (line 77)

unsigned int boxmuller_double_state

Type: unsigned int

Referenced by:

Member boxmuller_float​

Definition: murand\_mrg32k3a.h (line 78)

float boxmuller_float

Type: float

Member boxmuller_double​

Definition: murand\_mrg32k3a.h (line 79)

double boxmuller_double

Type: double


Structure murand_device::mtgp32_params​

Definition: murand\_mtgp32.h (line 85)

Members​

Attributes​

Member pos_tbl​

Definition: murand\_mtgp32.h (line 86)

unsigned int pos_tbl[MTGP_BN_MAX][MTGP_BN_MAX]

Type: unsigned int

Referenced by:

Member param_tbl​

Definition: murand\_mtgp32.h (line 87)

unsigned int param_tbl[MTGP_BN_MAX][MTGP_TS][MTGP_BN_MAX][MTGP_TS]

Type: unsigned int

Referenced by:

Member temper_tbl​

Definition: murand\_mtgp32.h (line 88)

unsigned int temper_tbl[MTGP_BN_MAX][MTGP_TS][MTGP_BN_MAX][MTGP_TS]

Type: unsigned int

Referenced by:

Member single_temper_tbl​

Definition: murand\_mtgp32.h (line 89)

unsigned int single_temper_tbl[MTGP_BN_MAX][MTGP_TS][MTGP_BN_MAX][MTGP_TS]

Type: unsigned int

Referenced by:

Member sh1_tbl​

Definition: murand\_mtgp32.h (line 90)

unsigned int sh1_tbl[MTGP_BN_MAX][MTGP_BN_MAX]

Type: unsigned int

Referenced by:

Member sh2_tbl​

Definition: murand\_mtgp32.h (line 91)

unsigned int sh2_tbl[MTGP_BN_MAX][MTGP_BN_MAX]

Type: unsigned int

Referenced by:

Member mask​

Definition: murand\_mtgp32.h (line 92)

unsigned int mask[1][1]

Type: unsigned int

Referenced by:

Public functions​

Function ~mtgp32_params​

FQUALIFIERS ~mtgp32_params()

Return type: FQUALIFIERS


Structure murand_device::mtgp32_state​

Definition: murand\_mtgp32.h (line 101)

Members​

Attributes​

Member offset​

Definition: murand\_mtgp32.h (line 102)

int offset

Type: int

Referenced by:

Member id​

Definition: murand\_mtgp32.h (line 103)

int id

Type: int

Referenced by:

Member status​

Definition: murand\_mtgp32.h (line 104)

unsigned int status[MTGP_STATE][MTGP_STATE]

Type: unsigned int

Referenced by:

Member k​

Definition: murand\_mtgp32.h (line 106)

mtgp32_kernel_params_t* k

Type: mtgp32_kernel_params_t *

Referenced by:

Public functions​

Function ~mtgp32_state​

FQUALIFIERS ~mtgp32_state()

Return type: FQUALIFIERS


Structure murand_device::philox4x32_10_engine::philox4x32_10_state​

Definition: murand\_philox4x32\_10.h (line 65)

Members​

Attributes​

Member ctr​

Definition: murand\_philox4x32\_10.h (line 66)

uint4 ctr

Type: uint4

Referenced by:

Member output​

Definition: murand\_philox4x32\_10.h (line 67)

uint4 output

Type: uint4

Referenced by:

Member key​

Definition: murand\_philox4x32\_10.h (line 68)

uint2 key

Type: uint2

Referenced by:

Member STATE​

Definition: murand\_philox4x32\_10.h (line 69)

unsigned int STATE

Type: unsigned int

Referenced by:

Member boxmuller_float_state​

Definition: murand\_philox4x32\_10.h (line 77)

unsigned int boxmuller_float_state

Type: unsigned int

Referenced by:

Member boxmuller_double_state​

Definition: murand\_philox4x32\_10.h (line 79)

unsigned int boxmuller_double_state

Type: unsigned int

Referenced by:

Member boxmuller_float​

Definition: murand\_philox4x32\_10.h (line 80)

float boxmuller_float

Type: float

Member boxmuller_double​

Definition: murand\_philox4x32\_10.h (line 81)

double boxmuller_double

Type: double


Structure murand_device::sobol32_state\< true \>​

Definition: murand\_sobol32.h (line 53)

Members​

Attributes​

Member d​

Definition: murand\_sobol32.h (line 54)

unsigned int d

Type: unsigned int

Member i​

Definition: murand\_sobol32.h (line 55)

unsigned int i

Type: unsigned int

Member vectors​

Definition: murand\_sobol32.h (line 56)

const unsigned int* vectors

Type: const unsigned int *

Public functions​

Function sobol32_state​

FQUALIFIERS sobol32_state()

Return type: FQUALIFIERS

Function sobol32_state​

FQUALIFIERS sobol32_state(const unsigned int d, const unsigned int i, const unsigned int *vectors)

Parameters:

  • const unsigned int d
  • const unsigned int i const unsigned int vectors

Return type: FQUALIFIERS


Structure murand_device::sobol32_state​

Definition: murand\_sobol32.h (line 35)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member d​

Definition: murand\_sobol32.h (line 36)

unsigned int d

Type: unsigned int

Member i​

Definition: murand\_sobol32.h (line 37)

unsigned int i

Type: unsigned int

Member vectors​

Definition: murand\_sobol32.h (line 38)

unsigned int vectors[32][32]

Type: unsigned int

Referenced by:

Public functions​

Function sobol32_state​

FQUALIFIERS sobol32_state()

Return type: FQUALIFIERS

Function sobol32_state​

FQUALIFIERS sobol32_state(const unsigned int d, const unsigned int i, const unsigned int *vectors)

Parameters:

  • const unsigned int d
  • const unsigned int i const unsigned int vectors

Return type: FQUALIFIERS

References:


Structure murand_device::sobol64_state\< true \>​

Definition: murand\_sobol64.h (line 53)

Members​

Attributes​

Member d​

Definition: murand\_sobol64.h (line 54)

unsigned long long int d

Type: unsigned long long int

Member i​

Definition: murand\_sobol64.h (line 55)

unsigned long long int i

Type: unsigned long long int

Member vectors​

Definition: murand\_sobol64.h (line 56)

const unsigned long long int* vectors

Type: const unsigned long long int *

Public functions​

Function sobol64_state​

FQUALIFIERS sobol64_state()

Return type: FQUALIFIERS

Function sobol64_state​

FQUALIFIERS sobol64_state(const unsigned long long int d, const unsigned long long int i, const unsigned long long int *vectors)

Parameters:

  • const unsigned long long int d
  • const unsigned long long int i const unsigned long long int vectors

Return type: FQUALIFIERS


Structure murand_device::sobol64_state​

Definition: murand\_sobol64.h (line 35)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member d​

Definition: murand\_sobol64.h (line 36)

unsigned long long int d

Type: unsigned long long int

Member i​

Definition: murand\_sobol64.h (line 37)

unsigned long long int i

Type: unsigned long long int

Member vectors​

Definition: murand\_sobol64.h (line 38)

unsigned long long int vectors[64][64]

Type: unsigned long long int

Referenced by:

Public functions​

Function sobol64_state​

FQUALIFIERS sobol64_state()

Return type: FQUALIFIERS

Function sobol64_state​

FQUALIFIERS sobol64_state(const unsigned long long int d, const unsigned long long int i, const unsigned long long int *vectors)

Parameters:

  • const unsigned long long int d
  • const unsigned long long int i const unsigned long long int vectors

Return type: FQUALIFIERS

References:


Structure murand_device::xorwow_engine::xorwow_state​

Definition: murand\_xorwow.h (line 85)

Members​

Attributes​

Member d​

Definition: murand\_xorwow.h (line 87)

unsigned int d

Type: unsigned int

Referenced by:

Member boxmuller_float_state​

Definition: murand\_xorwow.h (line 95)

unsigned int boxmuller_float_state

Type: unsigned int

Referenced by:

Member boxmuller_double_state​

Definition: murand\_xorwow.h (line 97)

unsigned int boxmuller_double_state

Type: unsigned int

Referenced by:

Member boxmuller_float​

Definition: murand\_xorwow.h (line 98)

float boxmuller_float

Type: float

Member boxmuller_double​

Definition: murand\_xorwow.h (line 99)

double boxmuller_double

Type: double

Member v​

Definition: murand\_xorwow.h (line 103)

unsigned int v[5][5]

Type: unsigned int

Referenced by:


Union murand_device::detail::two_uints_to_ulong undefined​

Definition: murand\_uniform.h (line 54)

Members​

Attributes​

Member uint2_value​

Definition: murand\_uniform.h (line 55)

two_uints uint2_value

Type: two_uints

Referenced by:

Member ulong_value​

Definition: murand\_uniform.h (line 56)

unsigned long long int ulong_value

Type: unsigned long long int

Referenced by:


Structures​


Index of Structures​

M​


Structure mtgp32_params_fast_t​

Definition: murand\_mtgp32.h (line 70)

MTGP32 parameters. Some element is redundant to keep structure simple.

pos is a pick up position which is selected to have good performance on graphic processors. 3 < pos < Q, where Q is a maximum number such that the size of status array - Q is a power of 2. For example, when mexp is 44497, size of 32-bit status array is 696, and Q is 184, then pos is between 4 and 183. This means 512 parallel calculations is allowed when mexp is 44497.

poly_sha1 is SHA1 digest of the characteristic polynomial of state transition function. SHA1 is calculated based on printing form of the polynomial. This is important when we use parameters generated by the dynamic creator which

mask This is a mask to make the dimension of state space have just Mersenne Prime. This is redundant.

Members​

Attributes​

Member mexp​

Definition: murand\_mtgp32.h (line 71)

int mexp

Mersenne exponent. This is redundant.

Type: int

Referenced by:

Member pos​

Definition: murand\_mtgp32.h (line 72)

int pos

pick up position.

Type: int

Member sh1​

Definition: murand\_mtgp32.h (line 73)

int sh1

Shift value 1. 0 < sh1 < 32.

Type: int

Member sh2​

Definition: murand\_mtgp32.h (line 74)

int sh2

Shift value 2. 0 < sh2 < 32.

Type: int

Member tbl​

Definition: murand\_mtgp32.h (line 75)

uint32_t tbl[16][16]

A small matrix.

Type: uint32_t

Referenced by:

Member tmp_tbl​

Definition: murand\_mtgp32.h (line 76)

uint32_t tmp_tbl[16][16]

A small matrix for tempering.

Type: uint32_t

Member flt_tmp_tbl​

Definition: murand\_mtgp32.h (line 77)

uint32_t flt_tmp_tbl[16][16]

A small matrix for tempering and converting to float.

Type: uint32_t

Member mask​

Definition: murand\_mtgp32.h (line 79)

uint32_t mask

This is a mask for state space.

Type: uint32_t

Member poly_sha1​

Definition: murand\_mtgp32.h (line 80)

unsigned char poly_sha1[21][21]

SHA1 digest.

Type: unsigned char


Structure murand_device::detail::two_uints​

Definition: murand\_uniform.h (line 49)

Members​

Attributes​

Member x​

Definition: murand\_uniform.h (line 50)

unsigned int x

Type: unsigned int

Referenced by:

Member y​

Definition: murand\_uniform.h (line 51)

unsigned int y

Type: unsigned int

Referenced by:


Structure murand_device::mrg32k3a_engine::mrg32k3a_state​

Definition: murand\_mrg32k3a.h (line 65)

Members​

Attributes​

Member g1​

Definition: murand\_mrg32k3a.h (line 66)

unsigned int g1[3][3]

Type: unsigned int

Referenced by:

Member g2​

Definition: murand\_mrg32k3a.h (line 67)

unsigned int g2[3][3]

Type: unsigned int

Referenced by:

Member boxmuller_float_state​

Definition: murand\_mrg32k3a.h (line 75)

unsigned int boxmuller_float_state

Type: unsigned int

Referenced by:

Member boxmuller_double_state​

Definition: murand\_mrg32k3a.h (line 77)

unsigned int boxmuller_double_state

Type: unsigned int

Referenced by:

Member boxmuller_float​

Definition: murand\_mrg32k3a.h (line 78)

float boxmuller_float

Type: float

Member boxmuller_double​

Definition: murand\_mrg32k3a.h (line 79)

double boxmuller_double

Type: double


Structure murand_device::mtgp32_params​

Definition: murand\_mtgp32.h (line 85)

Members​

Attributes​

Member pos_tbl​

Definition: murand\_mtgp32.h (line 86)

unsigned int pos_tbl[MTGP_BN_MAX][MTGP_BN_MAX]

Type: unsigned int

Referenced by:

Member param_tbl​

Definition: murand\_mtgp32.h (line 87)

unsigned int param_tbl[MTGP_BN_MAX][MTGP_TS][MTGP_BN_MAX][MTGP_TS]

Type: unsigned int

Referenced by:

Member temper_tbl​

Definition: murand\_mtgp32.h (line 88)

unsigned int temper_tbl[MTGP_BN_MAX][MTGP_TS][MTGP_BN_MAX][MTGP_TS]

Type: unsigned int

Referenced by:

Member single_temper_tbl​

Definition: murand\_mtgp32.h (line 89)

unsigned int single_temper_tbl[MTGP_BN_MAX][MTGP_TS][MTGP_BN_MAX][MTGP_TS]

Type: unsigned int

Referenced by:

Member sh1_tbl​

Definition: murand\_mtgp32.h (line 90)

unsigned int sh1_tbl[MTGP_BN_MAX][MTGP_BN_MAX]

Type: unsigned int

Referenced by:

Member sh2_tbl​

Definition: murand\_mtgp32.h (line 91)

unsigned int sh2_tbl[MTGP_BN_MAX][MTGP_BN_MAX]

Type: unsigned int

Referenced by:

Member mask​

Definition: murand\_mtgp32.h (line 92)

unsigned int mask[1][1]

Type: unsigned int

Referenced by:

Public functions​

Function ~mtgp32_params​

FQUALIFIERS ~mtgp32_params()

Return type: FQUALIFIERS


Structure murand_device::mtgp32_state​

Definition: murand\_mtgp32.h (line 101)

Members​

Attributes​

Member offset​

Definition: murand\_mtgp32.h (line 102)

int offset

Type: int

Referenced by:

Member id​

Definition: murand\_mtgp32.h (line 103)

int id

Type: int

Referenced by:

Member status​

Definition: murand\_mtgp32.h (line 104)

unsigned int status[MTGP_STATE][MTGP_STATE]

Type: unsigned int

Referenced by:

Member k​

Definition: murand\_mtgp32.h (line 106)

mtgp32_kernel_params_t* k

Type: mtgp32_kernel_params_t *

Referenced by:

Public functions​

Function ~mtgp32_state​

FQUALIFIERS ~mtgp32_state()

Return type: FQUALIFIERS


Structure murand_device::philox4x32_10_engine::philox4x32_10_state​

Definition: murand\_philox4x32\_10.h (line 65)

Members​

Attributes​

Member ctr​

Definition: murand\_philox4x32\_10.h (line 66)

uint4 ctr

Type: uint4

Referenced by:

Member output​

Definition: murand\_philox4x32\_10.h (line 67)

uint4 output

Type: uint4

Referenced by:

Member key​

Definition: murand\_philox4x32\_10.h (line 68)

uint2 key

Type: uint2

Referenced by:

Member STATE​

Definition: murand\_philox4x32\_10.h (line 69)

unsigned int STATE

Type: unsigned int

Referenced by:

Member boxmuller_float_state​

Definition: murand\_philox4x32\_10.h (line 77)

unsigned int boxmuller_float_state

Type: unsigned int

Referenced by:

Member boxmuller_double_state​

Definition: murand\_philox4x32\_10.h (line 79)

unsigned int boxmuller_double_state

Type: unsigned int

Referenced by:

Member boxmuller_float​

Definition: murand\_philox4x32\_10.h (line 80)

float boxmuller_float

Type: float

Member boxmuller_double​

Definition: murand\_philox4x32\_10.h (line 81)

double boxmuller_double

Type: double


Structure murand_device::sobol32_state\< true \>​

Definition: murand\_sobol32.h (line 53)

Members​

Attributes​

Member d​

Definition: murand\_sobol32.h (line 54)

unsigned int d

Type: unsigned int

Member i​

Definition: murand\_sobol32.h (line 55)

unsigned int i

Type: unsigned int

Member vectors​

Definition: murand\_sobol32.h (line 56)

const unsigned int* vectors

Type: const unsigned int *

Public functions​

Function sobol32_state​

FQUALIFIERS sobol32_state()

Return type: FQUALIFIERS

Function sobol32_state​

FQUALIFIERS sobol32_state(const unsigned int d, const unsigned int i, const unsigned int *vectors)

Parameters:

  • const unsigned int d
  • const unsigned int i const unsigned int vectors

Return type: FQUALIFIERS


Structure murand_device::sobol32_state​

Definition: murand\_sobol32.h (line 35)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member d​

Definition: murand\_sobol32.h (line 36)

unsigned int d

Type: unsigned int

Member i​

Definition: murand\_sobol32.h (line 37)

unsigned int i

Type: unsigned int

Member vectors​

Definition: murand\_sobol32.h (line 38)

unsigned int vectors[32][32]

Type: unsigned int

Referenced by:

Public functions​

Function sobol32_state​

FQUALIFIERS sobol32_state()

Return type: FQUALIFIERS

Function sobol32_state​

FQUALIFIERS sobol32_state(const unsigned int d, const unsigned int i, const unsigned int *vectors)

Parameters:

  • const unsigned int d
  • const unsigned int i const unsigned int vectors

Return type: FQUALIFIERS

References:


Structure murand_device::sobol64_state\< true \>​

Definition: murand\_sobol64.h (line 53)

Members​

Attributes​

Member d​

Definition: murand\_sobol64.h (line 54)

unsigned long long int d

Type: unsigned long long int

Member i​

Definition: murand\_sobol64.h (line 55)

unsigned long long int i

Type: unsigned long long int

Member vectors​

Definition: murand\_sobol64.h (line 56)

const unsigned long long int* vectors

Type: const unsigned long long int *

Public functions​

Function sobol64_state​

FQUALIFIERS sobol64_state()

Return type: FQUALIFIERS

Function sobol64_state​

FQUALIFIERS sobol64_state(const unsigned long long int d, const unsigned long long int i, const unsigned long long int *vectors)

Parameters:

  • const unsigned long long int d
  • const unsigned long long int i const unsigned long long int vectors

Return type: FQUALIFIERS


Structure murand_device::sobol64_state​

Definition: murand\_sobol64.h (line 35)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member d​

Definition: murand\_sobol64.h (line 36)

unsigned long long int d

Type: unsigned long long int

Member i​

Definition: murand\_sobol64.h (line 37)

unsigned long long int i

Type: unsigned long long int

Member vectors​

Definition: murand\_sobol64.h (line 38)

unsigned long long int vectors[64][64]

Type: unsigned long long int

Referenced by:

Public functions​

Function sobol64_state​

FQUALIFIERS sobol64_state()

Return type: FQUALIFIERS

Function sobol64_state​

FQUALIFIERS sobol64_state(const unsigned long long int d, const unsigned long long int i, const unsigned long long int *vectors)

Parameters:

  • const unsigned long long int d
  • const unsigned long long int i const unsigned long long int vectors

Return type: FQUALIFIERS

References:


Structure murand_device::xorwow_engine::xorwow_state​

Definition: murand\_xorwow.h (line 85)

Members​

Attributes​

Member d​

Definition: murand\_xorwow.h (line 87)

unsigned int d

Type: unsigned int

Referenced by:

Member boxmuller_float_state​

Definition: murand\_xorwow.h (line 95)

unsigned int boxmuller_float_state

Type: unsigned int

Referenced by:

Member boxmuller_double_state​

Definition: murand\_xorwow.h (line 97)

unsigned int boxmuller_double_state

Type: unsigned int

Referenced by:

Member boxmuller_float​

Definition: murand\_xorwow.h (line 98)

float boxmuller_float

Type: float

Member boxmuller_double​

Definition: murand\_xorwow.h (line 99)

double boxmuller_double

Type: double

Member v​

Definition: murand\_xorwow.h (line 103)

unsigned int v[5][5]

Type: unsigned int

Referenced by:


Classes​


Index of Classes​

M​


Class murand_device::mrg32k3a_engine​

Definition: murand\_mrg32k3a.h (line 63)

Inner classes​

Members​

Attributes​

Member m_state​

Definition: murand\_mrg32k3a.h (line 346)

mrg32k3a_state m_state

Type: mrg32k3a_state

Referenced by:

Friends​

Friend detail::engine_boxmuller_helper\< mrg32k3a_engine \>​

Definition: murand\_mrg32k3a.h (line 346)

Public functions​

Function mrg32k3a_engine​

FQUALIFIERS mrg32k3a_engine()

Return type: FQUALIFIERS

References:

Function mrg32k3a_engine​

FQUALIFIERS mrg32k3a_engine(const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset)

Initializes the internal state of the PRNG using seed value seed, goes to subsequence -th subsequence, and skips offset random numbers.

New seed value should not be zero. If seed_value is equal zero, value MURAND_MRG32K3A_DEFAULT_SEED is used instead.

A subsequence is 2^76 numbers long.

Parameters:

  • const unsigned long long seed
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS

References:

Function seed​

FQUALIFIERS void seed(unsigned long long seed_value, const unsigned long long subsequence, const unsigned long long offset)

Reinitializes the internal state of the PRNG using new seed value seed_value, skips subsequence subsequences and offset random numbers.

New seed value should not be zero. If seed_value is equal zero, value MURAND_MRG32K3A_DEFAULT_SEED is used instead.

A subsequence is 2^76 numbers long.

Parameters:

  • unsigned long long seed_value
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard​

FQUALIFIERS void discard(unsigned long long offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_subsequence​

FQUALIFIERS void discard_subsequence(unsigned long long subsequence)

Advances the internal state to skip subsequence subsequences. A subsequence is 2^76 numbers long.

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Function discard_sequence​

FQUALIFIERS void discard_sequence(unsigned long long sequence)

Advances the internal state to skip sequence sequences. A sequence is 2^127 numbers long.

Parameters:

  • unsigned long long sequence

Return type: FQUALIFIERS void

References:

Function restart​

FQUALIFIERS void restart(const unsigned long long subsequence, const unsigned long long offset)

Parameters:

  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Protected functions​

Function discard_impl​

FQUALIFIERS void discard_impl(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_subsequence_impl​

FQUALIFIERS void discard_subsequence_impl(unsigned long long subsequence)

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_sequence_impl​

FQUALIFIERS void discard_sequence_impl(unsigned long long sequence)

Parameters:

  • unsigned long long sequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state​

FQUALIFIERS void discard_state(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Private functions​

Function mod_mat_vec_m1​

FQUALIFIERS void mod_mat_vec_m1(const unsigned long long `A, unsigned int `s)

Parameters:

const unsigned long long A unsigned int s

Return type: FQUALIFIERS void

Function mod_mat_vec_m2​

FQUALIFIERS void mod_mat_vec_m2(const unsigned long long `A, unsigned int `s)

Parameters:

const unsigned long long A unsigned int s

Return type: FQUALIFIERS void

Function mod_mul_m1​

FQUALIFIERS unsigned long long mod_mul_m1(unsigned int i, unsigned long long j)

Parameters:

  • unsigned int i
  • unsigned long long j

Return type: FQUALIFIERS unsigned long long

Function mod_m1​

FQUALIFIERS unsigned long long mod_m1(unsigned long long p)

Parameters:

  • unsigned long long p

Return type: FQUALIFIERS unsigned long long

Function mod_mul_m2​

FQUALIFIERS unsigned long long mod_mul_m2(unsigned int i, unsigned long long j)

Parameters:

  • unsigned int i
  • unsigned long long j

Return type: FQUALIFIERS unsigned long long

Function mod_m2​

FQUALIFIERS unsigned long long mod_m2(unsigned long long p)

Parameters:

  • unsigned long long p

Return type: FQUALIFIERS unsigned long long


Class murand_device::mtgp32_engine​

Definition: murand\_mtgp32.h (line 130)

Members​

Attributes​

Member m_state​

Definition: murand\_mtgp32.h (line 257)

mtgp32_state m_state

Type: mtgp32_state

Referenced by:

Public functions​

Function mtgp32_engine​

FQUALIFIERS mtgp32_engine()

Return type: FQUALIFIERS

Function mtgp32_engine​

FQUALIFIERS mtgp32_engine(const mtgp32_state m_state, const mtgp32_kernel_params_t *params, int bid)

Parameters:

  • const mtgp32_state m_state const [mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) params
  • int bid

Return type: FQUALIFIERS

References:

Function ~mtgp32_engine​

FQUALIFIERS ~mtgp32_engine()

Return type: FQUALIFIERS

Function copy​

FQUALIFIERS void copy(const mtgp32_engine *m_engine)

Parameters:

const [mtgp32\_engine](#classmurand__device_1_1mtgp32__engine) m_engine

Return type: FQUALIFIERS void

References:

Function set_params​

FQUALIFIERS void set_params(mtgp32_kernel_params_t *params)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) params

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function next_single​

FQUALIFIERS unsigned int next_single()

Return type: FQUALIFIERS unsigned int

Function para_rec​

FQUALIFIERS unsigned int para_rec(mtgp32_kernel_params_t *k, unsigned int X1, unsigned int X2, unsigned int Y, int bid)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) k

  • unsigned int X1
  • unsigned int X2
  • unsigned int Y
  • int bid

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function temper​

FQUALIFIERS unsigned int temper(mtgp32_kernel_params_t *k, unsigned int V, unsigned int T, int bid)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) k

  • unsigned int V
  • unsigned int T
  • int bid

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function temper_single​

FQUALIFIERS unsigned int temper_single(mtgp32_kernel_params_t *k, unsigned int V, unsigned int T, int bid)

Parameters:

[mtgp32\_kernel\_params\_t](#namespacemurand__device_1a6177c3f368dce333d6bcb65e1add064b) k

  • unsigned int V
  • unsigned int T
  • int bid

Return type: FQUALIFIERS unsigned int

References:


Class murand_device::philox4x32_10_engine​

Definition: murand\_philox4x32\_10.h (line 63)

Inner classes​

Members​

Attributes​

Member m_state​

Definition: murand\_philox4x32\_10.h (line 288)

philox4x32_10_state m_state

Type: philox4x32_10_state

Referenced by:

Friends​

Friend detail::engine_boxmuller_helper\< philox4x32_10_engine \>​

Definition: murand\_philox4x32\_10.h (line 288)

Public functions​

Function philox4x32_10_engine​

FQUALIFIERS philox4x32_10_engine()

Return type: FQUALIFIERS

References:

Function philox4x32_10_engine​

FQUALIFIERS philox4x32_10_engine(const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset)

Initializes the internal state of the PRNG using seed value seed, goes to subsequence -th subsequence, and skips offset random numbers.

A subsequence consists of 2 ^ 66 random numbers.

Parameters:

  • const unsigned long long seed
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS

References:

Function seed​

FQUALIFIERS void seed(unsigned long long seed_value, const unsigned long long subsequence, const unsigned long long offset)

Reinitializes the internal state of the PRNG using new seed value seed_value, skips subsequence subsequences and offset random numbers.

A subsequence consists of 2 ^ 66 random numbers.

Parameters:

  • unsigned long long seed_value
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard​

FQUALIFIERS void discard(unsigned long long offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_subsequence​

FQUALIFIERS void discard_subsequence(unsigned long long subsequence)

Advances the internal state to skip subsequence subsequences, a subsequence consisting of 2 ^ 66 random numbers. In other words, this function is equivalent to calling discard 2 ^ 66 times without using the return value, but is much faster.

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Function restart​

FQUALIFIERS void restart(const unsigned long long subsequence, const unsigned long long offset)

Parameters:

  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function next4​

FQUALIFIERS uint4 next4()

Return type: FQUALIFIERS uint4

References:

Protected functions​

Function discard_impl​

FQUALIFIERS void discard_impl(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_subsequence_impl​

FQUALIFIERS void discard_subsequence_impl(unsigned long long subsequence)

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state​

FQUALIFIERS void discard_state(unsigned long long offset)

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Function interleave​

FQUALIFIERS uint4 interleave(const uint4 prev, const uint4 next) const

Parameters:

  • const uint4 prev
  • const uint4 next

Return type: FQUALIFIERS uint4

References:

Referenced by:

Function ten_rounds​

FQUALIFIERS uint4 ten_rounds(uint4 counter, uint2 key)

Parameters:

  • uint4 counter
  • uint2 key

Return type: FQUALIFIERS uint4

Referenced by:

Protected static functions​

Function bump_counter​

![][static]

static FQUALIFIERS uint4 bump_counter(uint4 counter)

Parameters:

  • uint4 counter

Return type: FQUALIFIERS uint4

Referenced by:

Private functions​

Function single_round​

FQUALIFIERS uint4 single_round(uint4 counter, uint2 key)

Parameters:

  • uint4 counter
  • uint2 key

Return type: FQUALIFIERS uint4

Function bumpkey​

FQUALIFIERS uint2 bumpkey(uint2 key)

Parameters:

  • uint2 key

Return type: FQUALIFIERS uint2


Class murand_device::scrambled_sobol32_engine​

Definition: murand\_scrambled\_sobol32.h (line 36)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member m_engine​

Definition: murand\_scrambled\_sobol32.h (line 77)

sobol32_engine<UseSharedVectors> m_engine

Type: sobol32_engine< UseSharedVectors >

Referenced by:

Member scramble_constant​

Definition: murand\_scrambled\_sobol32.h (line 79)

unsigned int scramble_constant

Type: unsigned int

Referenced by:

Public functions​

Function scrambled_sobol32_engine​

FQUALIFIERS scrambled_sobol32_engine()

Return type: FQUALIFIERS

Function scrambled_sobol32_engine​

FQUALIFIERS scrambled_sobol32_engine(const unsigned int *vectors, const unsigned int scramble_constant, const unsigned int offset)

Parameters:

const unsigned int vectors

  • const unsigned int scramble_constant
  • const unsigned int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned int current()

Return type: FQUALIFIERS unsigned int

References:


Class murand_device::scrambled_sobol64_engine​

Definition: murand\_scrambled\_sobol64.h (line 36)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Attributes​

Member m_engine​

Definition: murand\_scrambled\_sobol64.h (line 79)

sobol64_engine<UseSharedVectors> m_engine

Type: sobol64_engine< UseSharedVectors >

Referenced by:

Member scramble_constant​

Definition: murand\_scrambled\_sobol64.h (line 81)

unsigned long long int scramble_constant

Type: unsigned long long int

Referenced by:

Public functions​

Function scrambled_sobol64_engine​

FQUALIFIERS scrambled_sobol64_engine()

Return type: FQUALIFIERS

Function scrambled_sobol64_engine​

FQUALIFIERS scrambled_sobol64_engine(const unsigned long long int *vectors, const unsigned long long int scramble_constant, const unsigned int offset)

Parameters:

const unsigned long long int vectors

  • const unsigned long long int scramble_constant
  • const unsigned int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned long long int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned long long int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned long long int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned long long int operator()()

Return type: FQUALIFIERS unsigned long long int

References:

Function next​

FQUALIFIERS unsigned long long int next()

Return type: FQUALIFIERS unsigned long long int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned long long int current()

Return type: FQUALIFIERS unsigned long long int

References:


Class murand_device::sobol32_engine​

Definition: murand\_sobol32.h (line 67)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Public types​

Typedef sobol32_state​

Definition: murand\_sobol32.h (line 69)

typedef struct sobol32_state< UseSharedVectors > sobol32_state

Return type: struct sobol32_state< UseSharedVectors >

Attributes​

Member m_state​

Definition: murand\_sobol32.h (line 164)

sobol32_state m_state

Type: sobol32_state

Referenced by:

Public functions​

Function sobol32_engine​

FQUALIFIERS sobol32_engine()

Return type: FQUALIFIERS

Function sobol32_engine​

FQUALIFIERS sobol32_engine(const unsigned int *vectors, const unsigned int offset)

Parameters:

const unsigned int vectors

  • const unsigned int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned int current()

Return type: FQUALIFIERS unsigned int

References:

Protected functions​

Function discard_state​

FQUALIFIERS void discard_state(unsigned int offset)

Parameters:

  • unsigned int offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state_power2​

FQUALIFIERS void discard_state_power2(unsigned int stride)

Parameters:

  • unsigned int stride

Return type: FQUALIFIERS void

References:

Referenced by:

Function rightmost_zero_bit​

FQUALIFIERS unsigned int rightmost_zero_bit(unsigned int x)

Parameters:

  • unsigned int x

Return type: FQUALIFIERS unsigned int

Referenced by:


Class murand_device::sobol64_engine​

Definition: murand\_sobol64.h (line 67)

Template parameters:

  • UseSharedVectorsbool UseSharedVectors

Members​

Public types​

Typedef sobol64_state​

Definition: murand\_sobol64.h (line 69)

typedef struct sobol64_state< UseSharedVectors > sobol64_state

Return type: struct sobol64_state< UseSharedVectors >

Attributes​

Member m_state​

Definition: murand\_sobol64.h (line 169)

sobol64_state m_state

Type: sobol64_state

Referenced by:

Public functions​

Function sobol64_engine​

FQUALIFIERS sobol64_engine()

Return type: FQUALIFIERS

Function sobol64_engine​

FQUALIFIERS sobol64_engine(const unsigned long long int *vectors, const unsigned long long int offset)

Parameters:

const unsigned long long int vectors

  • const unsigned long long int offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned long long int offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long int offset

Return type: FQUALIFIERS void

References:

Function discard​

FQUALIFIERS void discard()

Return type: FQUALIFIERS void

References:

Function discard_stride​

FQUALIFIERS void discard_stride(unsigned long long int stride)

Advances the internal state by stride times, where stride is power of 2.

Parameters:

  • unsigned long long int stride

Return type: FQUALIFIERS void

References:

Function operator()​

FQUALIFIERS unsigned long long int operator()()

Return type: FQUALIFIERS unsigned long long int

References:

Function next​

FQUALIFIERS unsigned long long int next()

Return type: FQUALIFIERS unsigned long long int

References:

Referenced by:

Function current​

FQUALIFIERS unsigned long long int current()

Return type: FQUALIFIERS unsigned long long int

References:

Protected functions​

Function discard_state​

FQUALIFIERS void discard_state(unsigned long long int offset)

Parameters:

  • unsigned long long int offset

Return type: FQUALIFIERS void

References:

Function discard_state​

FQUALIFIERS void discard_state()

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_state_power2​

FQUALIFIERS void discard_state_power2(unsigned long long int stride)

Parameters:

  • unsigned long long int stride

Return type: FQUALIFIERS void

References:

Referenced by:

Function rightmost_zero_bit​

FQUALIFIERS unsigned int rightmost_zero_bit(unsigned long long int x)

Parameters:

  • unsigned long long int x

Return type: FQUALIFIERS unsigned int

Referenced by:


Class murand_device::xorwow_engine​

Definition: murand\_xorwow.h (line 83)

Inner classes​

Members​

Attributes​

Member m_state​

Definition: murand\_xorwow.h (line 224)

xorwow_state m_state

Type: xorwow_state

Referenced by:

Friends​

Friend detail::engine_boxmuller_helper\< xorwow_engine \>​

Definition: murand\_xorwow.h (line 224)

Public functions​

Function xorwow_engine​

FQUALIFIERS xorwow_engine()

Return type: FQUALIFIERS

Function xorwow_engine​

FQUALIFIERS xorwow_engine(const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset)

Initializes the internal state of the PRNG using seed value seed, goes to subsequence -th subsequence, and skips offset random numbers.

A subsequence is 2^67 numbers long.

Parameters:

  • const unsigned long long seed
  • const unsigned long long subsequence
  • const unsigned long long offset

Return type: FQUALIFIERS

References:

Function discard​

FQUALIFIERS void discard(unsigned long long offset)

Advances the internal state to skip offset numbers.

Parameters:

  • unsigned long long offset

Return type: FQUALIFIERS void

References:

Referenced by:

Function discard_subsequence​

FQUALIFIERS void discard_subsequence(unsigned long long subsequence)

Advances the internal state to skip subsequence subsequences. A subsequence is 2^67 numbers long.

Parameters:

  • unsigned long long subsequence

Return type: FQUALIFIERS void

References:

Referenced by:

Function operator()​

FQUALIFIERS unsigned int operator()()

Return type: FQUALIFIERS unsigned int

References:

Function next​

FQUALIFIERS unsigned int next()

Return type: FQUALIFIERS unsigned int

References:

Referenced by:

Protected functions​

Function jump​

FQUALIFIERS void jump(unsigned long long v, const unsigned int jump_matrices[XORWOW_JUMP_MATRICES][XORWOW_SIZE])

Parameters:

  • unsigned long long v
  • const unsigned int jump_matrices

Return type: FQUALIFIERS void

References:

Referenced by: