SFC64 Small Fast Chaotic PRNG#
- класс numpy.random.SFC64(seed=None)#
BitGenerator для Small Fast Chaotic PRNG Криса Доти-Хамфри.
- Параметры:
- seed{None, int, array_like[ints], SeedSequence}, необязательный
Семя для инициализации
BitGenerator. Если None, то свежая, непредсказуемая энтропия будет взята из ОС. Еслиintилиarray_like[ints]передается, то он будет передан вSeedSequenceдля получения начальногоBitGeneratorсостояние. Также можно передатьSeedSequenceэкземпляр.
Примечания
SFC64является 256-битной реализацией Small Fast Chaotic PRNG Криса Доти-Хамфри ([1]).SFC64имеет несколько различных циклов, в которых можно находиться, в зависимости от сида; ожидаемый период составит около \(2^{255}\) ([2]).SFC64включает 64-битный счётчик, что означает, что абсолютная минимальная длина цикла составляет \(2^{64}\) и что различные начальные значения не столкнутся друг с другом как минимум \(2^{64}\) итераций.SFC64предоставляет капсулу, содержащую указатели на функции, которые производят числа с плавающей запятой двойной точности, а также беззнаковые 32- и 64-битные целые числа. Они не могут быть использованы напрямую в Python и должны быть обработаныGeneratorили аналогичный объект, поддерживающий низкоуровневый доступ.Состояние и инициализация
The
SFC64вектор состояния состоит из 4 беззнаковых 64-битных значений. Последнее является 64-битным счётчиком, который увеличивается на 1 на каждой итерации.Входное начальное значение обрабатывается
SeedSequenceдля генерации первых 3 значений, затемSFC64алгоритм итерируется небольшое количество раз для перемешивания.Гарантия совместимости
SFC64гарантирует, что фиксированное начальное значение всегда будет давать один и тот же поток случайных целых чисел.Ссылки
Состояние#
Получить или установить состояние ГПСЧ |