:py:mod:`kosmos.topology.predefined_quantum.builders` ===================================================== .. py:module:: kosmos.topology.predefined_quantum.builders Module Attributes ----------------- .. py:data:: DEFAULT_COHERENCE_TIME :type: float :value: 1.0 .. py:data:: DEFAULT_DISTANCE :type: float :value: 1.0 .. py:data:: DEFAULT_ATTENUATION :type: float :value: 0.0 .. py:data:: DEFAULT_SIGNAL_SPEED :type: float :value: 0.0002 .. py:data:: DEFAULT_REPETITION_RATE :type: float :value: 1000000.0 Classes ------- .. py:class:: PredefinedQuantumTopology Bases: :py:class:`abc.ABC` Abstract base class for predefined quantum topologies. | .. rubric:: Methods .. py:method:: build() -> kosmos.topology.net.Network Construct the topology and return a Network instance. :returns: Constructed network instance. :rtype: Network ---- .. py:class:: LineTopology(num_nodes: int, num_qubits: int) Bases: :py:class:`PredefinedQuantumTopology` Line quantum topology. Initialize the line quantum topology. :param num_nodes: Number of nodes (must be >= 2). :type num_nodes: int :param num_qubits: Number of qubits for the node. :type num_qubits: int | .. rubric:: Methods .. py:method:: build() -> kosmos.topology.net.Network Build the line quantum topology. :returns: Network with nodes connected in a linear chain. :rtype: Network ---- .. py:class:: RingTopology(num_nodes: int, num_qubits: int) Bases: :py:class:`PredefinedQuantumTopology` Ring quantum topology. Initialize the ring quantum topology. :param num_nodes: Number of nodes (must be >= 3). :type num_nodes: int :param num_qubits: Number of qubits for the node. :type num_qubits: int | .. rubric:: Methods .. py:method:: build() -> kosmos.topology.net.Network Build the ring quantum topology. :returns: Network forming a closed cycle. :rtype: Network ---- .. py:class:: StarTopology(num_nodes: int, num_qubits: int) Bases: :py:class:`PredefinedQuantumTopology` Star quantum topology. Initialize the star quantum topology. :param num_nodes: Number of nodes (must be >= 2). :type num_nodes: int :param num_qubits: Number of qubits for the node. :type num_qubits: int | .. rubric:: Methods .. py:method:: build() -> kosmos.topology.net.Network Build the star quantum topology. :returns: Network with one central node and all other nodes connected to the center. :rtype: Network