qpce package¶
Submodules¶
qpce.link module¶
Quantum link.
-
class
qpce.link.
Link
(router_1, router_2, length)[source]¶ Bases:
object
A link.
A link object represents a physical link between a pair of quantum routers.
The current implementation assumes that every link is both a quantum link (can exchange qubits) as well as a classical link (can exchange classical messages). In other words, at this point we assume that the quantum topology and the classical topology are the same.
qpce.network module¶
Quantum network.
qpce.network_yaml module¶
qpce.path module¶
Quantum path.
-
class
qpce.path.
Path
(demand, name, end_point_1, end_point_2, bandwidth, fidelity)[source]¶ Bases:
object
A quantum path.
A quantum path is an association between two application end-points over which qubits are teleported. The path produces end-to-end Bell pairs at the rate and fidelity requested by the application.
qpce.router module¶
Quantum Router.
-
class
qpce.router.
Router
(network, name)[source]¶ Bases:
object
A quantum router.
A quantum router object represents a quantum router that is part of a quantum network. Quantum routers are interconnected by quantum links.
-
add_link
(link)[source]¶ Add a link to the router. The link is attached to the next available port. The number of that port is returned.
- Parameters
link (Link) – The link to be attached.
- Returns
The port to which the link was attached.
- Raises
AssertionError if there is already a router with the same name in the network. –
-