Package org.apache.commons.rng.core.source32


package org.apache.commons.rng.core.source32
Concrete algorithms for int-based sources of randomness.

For internal use only: Direct access to classes in this package is discouraged, as they could be modified without notice.

Notes for developers

  • A source of randomness must inherit from IntProvider
  • The "provider" must specify one way for setting the seed. For a given seed, the generated sequence must always be the same.
  • The "provider" must implement methods getStateInternal and setStateInternal in order to save and restore the state of an instance (cf. BaseProvider).
  • When a new class is implemented here, user-access to it must be provided through associated RandomSource factory methods defined in module "commons-rng-simple".
  • Class
    Description
    This abstract class is a base for algorithms from the Permuted Congruential Generator (PCG) family that use an internal 64-bit Linear Congruential Generator (LCG) and output 32-bits per cycle.
    This abstract class is a base for algorithms from the Permuted Congruential Generator (PCG) family that use an internal 64-bit Multiplicative Congruential Generator (MCG) and output 32-bits per cycle.
    This abstract class implements the WELL class of pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    Inner class used to store the indirection index table which is fixed for a given type of WELL class of pseudo-random number generator.
    This abstract class is a base for algorithms from the Xor-Shift-Rotate family of 32-bit generators with 64-bits of state.
    This abstract class is a base for algorithms from the Xor-Shift-Rotate family of 32-bit generators with 128-bits of state.
    Implement the Small, Fast, Counting (SFC) 32-bit generator of Chris Doty-Humphrey.
    Base class for all implementations that provide an int-based source randomness.
    A fast cryptographic pseudo-random number generator.
    A provider that uses the Random.nextInt() method of the JDK's Random class as the source of randomness.
    An ObjectInputStream that's restricted to deserialize only Random using look-ahead deserialization.
    Implement Bob Jenkins's small fast (JSF) 32-bit generator.
    Port from Marsaglia's "KISS" algorithm.
    A 32-bit all purpose generator.
    Utility support for the LXM family of generators.
    This class implements a powerful pseudo-random number generator developed by Makoto Matsumoto and Takuji Nishimura during 1996-1997.
    Middle Square Weyl Sequence Random Number Generator.
    Port from Marsaglia's "Multiply-With-Carry" algorithm.
    A Permuted Congruential Generator (PCG) that is composed of a 64-bit Multiplicative Congruential Generator (MCG) combined with the XSH-RR (xorshift; random rotate) output transformation to create 32-bit output.
    A Permuted Congruential Generator (PCG) that is composed of a 64-bit Multiplicative Congruential Generator (MCG) combined with the XSH-RS (xorshift; random shift) output transformation to create 32-bit output.
    A Permuted Congruential Generator (PCG) that is composed of a 64-bit Linear Congruential Generator (LCG) combined with the XSH-RR (xorshift; random rotate) output transformation to create 32-bit output.
    A Permuted Congruential Generator (PCG) that is composed of a 64-bit Linear Congruential Generator (LCG) combined with the XSH-RS (xorshift; random shift) output transformation to create 32-bit output.
    Source of randomness that generates values of type int.
    This class implements the WELL1024a pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    This class implements the WELL19937a pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    This class implements the WELL19937c pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    This class implements the WELL44497a pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    This class implements the WELL44497b pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    This class implements the WELL512a pseudo-random number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.
    A fast 32-bit generator suitable for float generation.
    A fast all-purpose 32-bit generator.
    A fast 32-bit generator suitable for float generation.
    A fast all-purpose 32-bit generator.
    A fast all-purpose 32-bit generator.