Topology Types
Node/link definitions, generated topologies, topology snapshots, and diffing.
NodeDefinition
Quantum node (station or repeater).
NodeDefinition(id: str, memory_lifetime_t2: float)
| Field | Type | Description |
|---|---|---|
id | str | Unique node identifier |
memory_lifetime_t2 | float | Qubit T2 coherence time (s) |
LinkDefinition
Physical quantum link between two nodes.
LinkDefinition(
from_node: str,
to: str,
distance_km: float,
base_fidelity: float,
generation_rate_hz: float,
link_type: Optional[LinkType] = LinkType.Fiber,
satellite_conditions: Optional[SatelliteConditions] = None,
)
| Field | Type | Default | Description |
|---|---|---|---|
from_node | str | — | Source node ID |
to | str | — | Destination node ID |
distance_km | float | — | Physical distance (km) |
base_fidelity | float | — | Raw link entanglement fidelity |
generation_rate_hz | float | — | Photon pair generation rate (Hz) |
link_type | LinkType | Fiber | Physical medium |
satellite_conditions | SatelliteConditions | None | Conditions if satellite link |
NetworkTopologyPayload
Generated topology from generate_topology().
| Field | Type | Description |
|---|---|---|
nodes | List[NodeDefinition] | Generated nodes |
links | List[LinkDefinition] | Generated links |
TopologyEndpoints
Maps a generated topology name to its source and target nodes (used with compare_topologies).
TopologyEndpoints(topology_name: str, from_node: str, to_node: str)
| Field | Type | Description |
|---|---|---|
topology_name | str | Pre-built topology name (telecom_backbone, repeater_chain, hybrid_satellite_fiber) |
from_node | str | Source node ID within that topology |
to_node | str | Destination node ID within that topology |
TopologySnapshot
Topology snapshot used for programmatic diffing.
TopologySnapshot(
metadata: TopologyMetadata,
nodes: List[NodeDefinition],
links: List[LinkDefinition],
config: TopologyConfig,
)
| Field | Type | Description |
|---|---|---|
metadata | TopologyMetadata | Snapshot metadata |
nodes | List[NodeDefinition] | Nodes in this snapshot |
links | List[LinkDefinition] | Links in this snapshot |
config | TopologyConfig | Physics config for this snapshot |
TopologyMetadata
Snapshot metadata.
TopologyMetadata(name: str, version: str)
| Field | Type | Description |
|---|---|---|
name | str | Snapshot name |
version | str | Snapshot version |
TopologyConfig
Snapshot physics configuration.
TopologyConfig(alpha_loss: float, gamma_swapping: float)
| Field | Type | Description |
|---|---|---|
alpha_loss | float | Alpha loss parameter |
gamma_swapping | float | Gamma swapping parameter |
TopologyDiff
Diff between two topology snapshots.
| Field | Type | Description |
|---|---|---|
name | str | Diff name |
nodes_added | List[str] | Nodes added in snapshot 2 |
nodes_removed | List[str] | Nodes removed from snapshot 1 |
nodes_modified | List[str] | Nodes modified between snapshots |
links_added | List[str] | Links added in snapshot 2 |
links_removed | List[str] | Links removed from snapshot 1 |
links_modified | List[str] | Links modified between snapshots |
summary | str | Human-readable summary of the diff |