SFC64 Small Fast Chaotic PRNG
- 
class numpy.random.SFC64(seed=None) - 
BitGenerator for Chris Doty-Humphrey’s Small Fast Chaotic PRNG.
- Parameters
 - 
- 
seed{None, int, array_like[ints], SeedSequence}, optional - 
A seed to initialize the
BitGenerator. If None, then fresh, unpredictable entropy will be pulled from the OS. If anintorarray_like[ints]is passed, then it will be passed toSeedSequenceto derive the initialBitGeneratorstate. One may also pass in aSeedSequenceinstance. 
 - 
 
Notes
SFC64is a 256-bit implementation of Chris Doty-Humphrey’s Small Fast Chaotic PRNG ([1]).SFC64has a few different cycles that one might be on, depending on the seed; the expected period will be about([2]).
SFC64incorporates a 64-bit counter which means that the absolute minimum cycle length isand that distinct seeds will not run into each other for at least
iterations.
SFC64provides a capsule containing function pointers that produce doubles, and unsigned 32 and 64- bit integers. These are not directly consumable in Python and must be consumed by aGeneratoror similar object that supports low-level access.State and Seeding
The
SFC64state vector consists of 4 unsigned 64-bit values. The last is a 64-bit counter that increments by 1 each iteration.The input seed is processed by
SeedSequenceto generate the first 3 values, then theSFC64algorithm is iterated a small number of times to mix.Compatibility Guarantee
SFC64makes a guarantee that a fixed seed will always produce the same random integer stream.References
 
State
Get or set the PRNG state  |  
Extending
CFFI interface  |  |
ctypes interface  |  
    © 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
    https://numpy.org/doc/1.18/reference/random/bit_generators/sfc64.html