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
andsetStateInternal
in order to save and restore the state of an instance (cf.BaseProvider
). 
When a new class is implemented here, useraccess to it must be
provided through associated
RandomSource
factory methods defined in module "commonsrngsimple".

Interface Summary Interface Description RandomIntSource Source of randomness that generates values of typeint
. 
Class Summary Class Description AbstractWell This abstract class implements the WELL class of pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.AbstractWell.IndexTable Inner class used to store the indirection index table which is fixed for a given type of WELL class of pseudorandom number generator.DotyHumphreySmallFastCounting32 Implement the Small, Fast, Counting (SFC) 32bit generator of Chris DotyHumphrey.IntProvider Base class for all implementations that provide anint
based source randomness.ISAACRandom A fast cryptographic pseudorandom number generator.JDKRandom A provider that uses theRandom.nextInt()
method of the JDK'sRandom
class as the source of randomness.JenkinsSmallFast32 Implement Bob Jenkins's small fast (JSF) 32bit generator.KISSRandom Port from Marsaglia's "KISS" algorithm.L32X64Mix A 32bit all purpose generator.MersenneTwister This class implements a powerful pseudorandom number generator developed by Makoto Matsumoto and Takuji Nishimura during 19961997.MiddleSquareWeylSequence Middle Square Weyl Sequence Random Number Generator.MultiplyWithCarry256 Port from Marsaglia's "MultiplyWithCarry" algorithm.PcgMcgXshRr32 A Permuted Congruential Generator (PCG) that is composed of a 64bit Multiplicative Congruential Generator (MCG) combined with the XSHRR (xorshift; random rotate) output transformation to create 32bit output.PcgMcgXshRs32 A Permuted Congruential Generator (PCG) that is composed of a 64bit Multiplicative Congruential Generator (MCG) combined with the XSHRS (xorshift; random shift) output transformation to create 32bit output.PcgXshRr32 A Permuted Congruential Generator (PCG) that is composed of a 64bit Linear Congruential Generator (LCG) combined with the XSHRR (xorshift; random rotate) output transformation to create 32bit output.PcgXshRs32 A Permuted Congruential Generator (PCG) that is composed of a 64bit Linear Congruential Generator (LCG) combined with the XSHRS (xorshift; random shift) output transformation to create 32bit output.Well1024a This class implements the WELL1024a pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.Well19937a This class implements the WELL19937a pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.Well19937c This class implements the WELL19937c pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.Well44497a This class implements the WELL44497a pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.Well44497b This class implements the WELL44497b pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.Well512a This class implements the WELL512a pseudorandom number generator from François Panneton, Pierre L'Ecuyer and Makoto Matsumoto.XoRoShiRo64Star A fast 32bit generator suitable forfloat
generation.XoRoShiRo64StarStar A fast allpurpose 32bit generator.XoShiRo128Plus A fast 32bit generator suitable forfloat
generation.XoShiRo128PlusPlus A fast allpurpose 32bit generator.XoShiRo128StarStar A fast allpurpose 32bit generator.