utils
¶
Functions used by more than one PyPhi module or class, or that might be of external use.
- pyphi.utils.state_of(nodes, network_state)¶
Return the state-tuple of the given nodes.
- pyphi.utils.all_states(n, big_endian=False)¶
Return all binary states for a system.
- Parameters
n (int) – The number of elements in the system.
big_endian (bool) – Whether to return the states in big-endian order instead of little-endian order.
- Yields
tuple[int] – The next state of an
n
-element system, in little-endian order unlessbig_endian
isTrue
.
- pyphi.utils.all_states_nb(n, p=None, l=None, nl=None, nb=None, big_endian=False)¶
Return all binary states for a system.
- Parameters
n (int) – The number of elements in the system.
big_endian (bool) – Whether to return the states in big-endian order instead of little-endian order.
- Yields
tuple[int] – The next state of an
n
-element system, in little-endian order unlessbig_endian
isTrue
.
- pyphi.utils.all_possible_states_nb(num_states_per_node, s=False)¶
- pyphi.utils.np_immutable(a)¶
Make a NumPy array immutable.
- pyphi.utils.np_hash(a)¶
Return a hash of a NumPy array.
- class pyphi.utils.np_hashable(array)¶
A hashable wrapper around a NumPy array.
- pyphi.utils.eq(x, y)¶
Compare two values up to
PRECISION
.
- pyphi.utils.combs(a, r)¶
NumPy implementation of
itertools.combinations
.Return successive
r
-length combinations of elements in the arraya
.- Parameters
a (np.ndarray) – The array from which to get combinations.
r (int) – The length of the combinations.
- Returns
An array of combinations.
- Return type
np.ndarray
- pyphi.utils.comb_indices(n, k)¶
n
-dimensional version of itertools.combinations.- Parameters
a (np.ndarray) – The array from which to get combinations.
k (int) – The desired length of the combinations.
- Returns
Indices that give the
k
-combinations ofn
elements.- Return type
np.ndarray
Example
>>> n, k = 3, 2 >>> data = np.arange(6).reshape(2, 3) >>> data[:, comb_indices(n, k)] array([[[0, 1], [0, 2], [1, 2]], [[3, 4], [3, 5], [4, 5]]])
- pyphi.utils.powerset(iterable, nonempty=False, reverse=False)¶
Generate the power set of an iterable.
- Parameters
iterable (Iterable) – The iterable from which to generate the power set.
- Keyword Arguments
nonempty (boolean) – If True, don’t include the empty set.
reverse (boolean) – If True, reverse the order of the powerset.
- Returns
An iterator over the power set.
- Return type
Iterable
Example
>>> ps = powerset(np.arange(2)) >>> list(ps) [(), (0,), (1,), (0, 1)] >>> ps = powerset(np.arange(2), nonempty=True) >>> list(ps) [(0,), (1,), (0, 1)] >>> ps = powerset(np.arange(2), nonempty=True, reverse=True) >>> list(ps) [(1, 0), (1,), (0,)]
- pyphi.utils.load_data(directory, num)¶
Load numpy data from the data directory.
The files should stored in
../data/<dir>
and named0.npy, 1.npy, ... <num - 1>.npy
.- Returns
A list of loaded data, such that
list[i]
contains the the contents ofi.npy
.- Return type
list