SFC64小型快速混沌脉冲发生器

class numpy.random.SFC64(seed=None)

克里斯·多蒂·汉弗莱的小型快速混沌PRNG的比特发生器。

参数
seed{None, int, array_like[ints], SeedSequence}, optional

初始化的种子 BitGenerator . 如果没有,那么新的,不可预测的熵将从操作系统中提取。如果 intarray_like[ints] 如果通过了,那么它将被传递给 SeedSequence 导出初始值 BitGenerator 州。你也可以通过 SeedSequence 实例。

笔记

SFC64 是Chris Doty Humphrey的小型快速混沌PRNG的256位实现 ([1]) . SFC64 根据种子的不同,有几个不同的周期;预期周期约为 2^{{255}} ([2]) . SFC64 包含一个64位计数器,这意味着绝对最小周期长度为 2^{{64}} 不同的种子至少在一段时间内不会互相碰撞 2^{{64}} 迭代。

SFC64 提供包含生成双精度、无符号32位和64位整数的函数指针的胶囊。它们在Python中不能直接使用,必须由 Generator 或支持低级访问的类似对象。

状态和种子

这个 SFC64 状态向量由4个无符号64位值组成。最后一个是64位计数器,每次迭代递增1。

输入种子由 SeedSequence 生成前3个值,然后 SFC64 算法是迭代少量的次数来混合的。

兼容性保证

SFC64 保证固定种子将始终生成相同的随机整数流。

工具书类

1

"PractRand"

2

"Random Invertible Mapping Statistics"

state 

获取或设置PRNG状态

延伸

cffi 

CFFI接口

ctypes 

ctypes接口