node

Represents a node in a subsystem. Each node has a unique index, its position in the network’s list of nodes.

class pyphi.node.Node(tpm, cm, index, state, label)

A node in a subsystem.

tpm

np.ndarray – The TPM of the subsystem.

cm

np.ndarray – The CM of the subsystem.

index

int – The node’s index in the network.

state

int – The state of this node.

label

str – An optional label for the node.

input_indices

The indices of nodes which connect to this node.

output_indices

The indices of nodes that this node connects to.

inputs

The set of nodes with connections to this node.

outputs

The set of nodes this node has connections to.

__eq__(other)

Return whether this node equals the other object.

Two nodes are equal if they belong to the same subsystem and have the same index (their TPMs must be the same in that case, so this method doesn’t need to check TPM equality).

Labels are for display only, so two equal nodes may have different labels.

to_json()
pyphi.node.default_label(index)

Default label for a node.

pyphi.node.default_labels(indices)

Default labels for serveral nodes.

pyphi.node.tpm_indices(tpm)

Indices of nodes in the TPM.

pyphi.node.generate_nodes(tpm, cm, network_state, labels=None)

Generate Node objects for a subsystem.

Parameters:
  • tpm (np.ndarray) – The system’s TPM
  • cm (np.ndarray) – The corresponding CM.
  • network_state (tuple) – The state of the network.
Keyword Arguments:
 

labels (tuple[str]) – Textual labels for each node.

Returns:

tuple[|Node|] – The nodes of the system.

pyphi.node.expand_node_tpm(tpm)

Broadcast a node TPM over the full network.

This is different from broadcasting the TPM of a full system since the last dimension (containing the state of the node) is unitary – not a state- tuple.