![]() The sections below discuss each basic generator in more detail and provide references for further reading. The subroutine generates a real arithmetic vector of uniform distribution over the interval [ a, b). The subroutine generates a real arithmetic vector of uniform distribution over the interval [ a, b).ĭouble Precision Floating-Point Random Number Vector Generation Subroutine. ![]() Single Precision Floating-Point Random Number Vector Generation Subroutine. For details on randomness of individual bits or bit groups, see Basic Random Generator Properties and Testing Results. ![]() Every generated integral value (within certain bounds) may be considered a random bit vector. See section Random Streams and RNGs in Parallel Computation for details. Įach VS basic generator consists of the following subroutines: See Abstract Basic Random Number Generators. Pseudorandom or quasi-random, depending on the user-provided settingsĪbstract source of random numbers. Available in IA® architectures supporting this instruction set. NIEDERREITER (with Antonov-Saleev modification)Ī 32-bit Gray code-based generator producing low-discrepancy sequences for dimensions 1≤s≤318.Ī Philox4x32-10 counter-based pseudorandom number generator.Ī counter-based pseudorandom number generator, which uses instructions from the AES-NI set. SOBOL (with Antonov-Saleev modification)Ī 32-bit Gray code-based generator producing low-discrepancy sequences for dimensions 1≤s≤40 SIMD-oriented Fast Mersenne Twister pseudorandom number generator. Mersenne Twister pseudorandom number generator.Ī set of 6024 Mersenne-Twister pseudorandom number generators VS provides the following basic pseudo-, quasi-, and non-deterministic random number generators:Ī 31-bit multiplicative congruential generator.Ī generalized feedback shift register generator.Ī combined multiple recursive generator with two components of order 3.Ī 59-bit multiplicative congruential generator.Ī set of 273 Wichmann-Hill combined multiplicative congruential generators To get more reliable results of the experiment, many authors recommend using several different BRNGs in a series of computational experiments. Being one of such structural elements, an RNG may produce inadequate results. Any verification process involves testing of each structural element of the system. Typically, a researcher cannot verify the output since the solution is simply unknown. Result verification is very important for computational experimentation. Having several basic RNGs of different types available in VS also enables you to get more accurate verification results. ![]() This makes VS a general-purpose library suitable for various tasks. You can also use random numbers generated externally, for example, from a physical source of random numbers. VS provides a variety of BRNGs and permits you to register user-defined basic generators and use them in the same way as the BRNGs available with VS. ![]() You should choose the BRNG depending on your application requirements, such as:Įfficient generation of random number subsequencesįor example, a BRNG that cannot provide true randomness for lower bits is still applicable to applications using variates as real numbers. Non-uniform distribution generators depend on the quality of the underlying BRNGs. Uniform (VSL_RNG_METHOD_UNIFORM_STD/VSL_RNG_METHOD_UNIFORM_STD_ACCURATE) Gaussian (VSL_RNG_METHOD_GAUSSIAN_BOXMULLER) Gaussian (VSL_RNG_METHOD_GAUSSIAN_BOXMULLER2) Gaussian (VSL_RNG_METHOD_GAUSSIAN_ICDF) GaussianMV (VSL_RNG_METHOD_GAUSSIANMV_BOXMULLER) GaussianMV (VSL_RNG_METHOD_GAUSSIANMV_BOXMULLER2) GaussianMV (VSL_RNG_METHOD_GAUSSIANMV_ICDF) Exponential (VSL_RNG_METHOD_EXPONENTIAL_ICDF/VSL_RNG_METHOD_EXPONENTIAL_ICDF_ACCURATE) Laplace (VSL_RNG_METHOD_LAPLACE_ICDF) Weibull (VSL_RNG_METHOD_WEIBULL_ICDF/ VSL_RNG_METHOD_WEIBULL_ICDF_ACCURATE) Cauchy (VSL_RNG_METHOD_CAUCHY_ICDF) Rayleigh (VSL_RNG_METHOD_RAYLEIGH_ICDF/ VSL_RNG_METHOD_RAYLEIGH_ICDF_ACCURATE) Lognormal (VSL_RNG_METHOD_LOGNORMAL_ BOXMULLER2/VSL_RNG_METHOD_LOGNORMAL_BOXMULLER2_ACCURATE) Lognormal (VSL_RNG_METHOD_LOGNORMAL_ICDF/VSL_RNG_METHOD_LOGNORMAL_ICDF_ACCURATE) Gumbel (VSL_RNG_METHOD_GUMBEL_ICDF) Gamma (VSL_RNG_METHOD_GAMMA_GNORM/ VSL_RNG_METHOD_GAMMA_GNORM_ACCURATE) Beta (VSL_RNG_METHOD_BETA_CJA/ VSL_RNG_METHOD_BETA_CJA_ACCURATE) ChiSquare (VSL_RNG_METHOD_CHISQUARE_CHI2GAMMA)īasic Random Number Generators (BRNG) are used to obtain random numbers of various statistical distributions. ![]()
0 Comments
Leave a Reply. |