diff options
author | Kevin Sheppard <kevin.k.sheppard@gmail.com> | 2019-06-06 14:46:55 +0100 |
---|---|---|
committer | Kevin Sheppard <kevin.k.sheppard@gmail.com> | 2019-06-06 16:59:32 +0100 |
commit | 5ccf87dd2da092c2e6936ed2fe6d680fcf88aa85 (patch) | |
tree | 591b6598b2c982a51937fed1dc538e8acd172f24 /numpy/random/threefry.pyx | |
parent | 2d4975e75c210202293b894bf98faf12f4697a31 (diff) | |
download | numpy-5ccf87dd2da092c2e6936ed2fe6d680fcf88aa85.tar.gz |
MAINT: Update PCG jump sizes
Update pcg jump sizes
Wrap advance when too large
Diffstat (limited to 'numpy/random/threefry.pyx')
-rw-r--r-- | numpy/random/threefry.pyx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/numpy/random/threefry.pyx b/numpy/random/threefry.pyx index 5e5b9cf7a..8c349b2e1 100644 --- a/numpy/random/threefry.pyx +++ b/numpy/random/threefry.pyx @@ -337,7 +337,7 @@ cdef class ThreeFry: self.rng_state.uinteger = value['uinteger'] self.rng_state.buffer_pos = value['buffer_pos'] - cdef jump_inplace(self, np.npy_intp iter): + cdef jump_inplace(self, iter): """ Jump state in-place @@ -348,9 +348,9 @@ cdef class ThreeFry: iter : integer, positive Number of times to jump the state of the rng. """ - self.advance(iter * 2 ** 128) + self.advance(iter * int(2**128)) - def jumped(self, np.npy_intp iter=1): + def jumped(self, iter=1): """ jumped(iter=1) @@ -413,6 +413,8 @@ cdef class ThreeFry: Advancing the RNG state resets any pre-computed random numbers. This is required to ensure exact reproducibility. """ + delta = wrap_int(delta, 256) + cdef np.ndarray delta_a delta_a = int_to_array(delta, 'step', 256, 64) threefry_advance(<uint64_t *>delta_a.data, &self.rng_state) |