1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- from .mtrand import RandomState
- from ._philox import Philox
- from ._pcg64 import PCG64, PCG64DXSM
- from ._sfc64 import SFC64
- from ._generator import Generator
- from ._mt19937 import MT19937
- BitGenerators = {'MT19937': MT19937,
- 'PCG64': PCG64,
- 'PCG64DXSM': PCG64DXSM,
- 'Philox': Philox,
- 'SFC64': SFC64,
- }
- def __bit_generator_ctor(bit_generator_name='MT19937'):
- """
- Pickling helper function that returns a bit generator object
- Parameters
- ----------
- bit_generator_name : str
- String containing the name of the BitGenerator
- Returns
- -------
- bit_generator : BitGenerator
- BitGenerator instance
- """
- if bit_generator_name in BitGenerators:
- bit_generator = BitGenerators[bit_generator_name]
- else:
- raise ValueError(str(bit_generator_name) + ' is not a known '
- 'BitGenerator module.')
- return bit_generator()
- def __generator_ctor(bit_generator_name="MT19937",
- bit_generator_ctor=__bit_generator_ctor):
- """
- Pickling helper function that returns a Generator object
- Parameters
- ----------
- bit_generator_name : str
- String containing the core BitGenerator's name
- bit_generator_ctor : callable, optional
- Callable function that takes bit_generator_name as its only argument
- and returns an instantized bit generator.
- Returns
- -------
- rg : Generator
- Generator using the named core BitGenerator
- """
- return Generator(bit_generator_ctor(bit_generator_name))
- def __randomstate_ctor(bit_generator_name="MT19937",
- bit_generator_ctor=__bit_generator_ctor):
- """
- Pickling helper function that returns a legacy RandomState-like object
- Parameters
- ----------
- bit_generator_name : str
- String containing the core BitGenerator's name
- bit_generator_ctor : callable, optional
- Callable function that takes bit_generator_name as its only argument
- and returns an instantized bit generator.
- Returns
- -------
- rs : RandomState
- Legacy RandomState using the named core BitGenerator
- """
- return RandomState(bit_generator_ctor(bit_generator_name))
|