cirq_google.workflow.HardcodedQubitPlacer

Inherits From: QubitPlacer

mapping The hardcoded placements. This provides a placement for each supported cirq.NamedTopology. The topology serves as the key for the mapping dictionary. Each placement is a dictionary mapping topology node to final cirq.Qid device qubit.
topo_node_to_qubit_func A function that maps from cirq.NamedTopology nodes to cirq.Qid. There is a correspondence between nodes and the "abstract" Qids used to construct the un-placed circuit. We use this function to interpret the provided mappings. By default: nodes which are tuples correspond to cirq.GridQubits; otherwise cirq.LineQubit.

Methods

place_circuit

View source

Place a circuit according to the hardcoded placements.

Args
circuit The circuit.
problem_topology The topologies (i.e. connectivity) of the circuit, use to look up the placement in self.mapping.
shared_rt_info A cg.SharedRuntimeInfo object; ignored for hardcoded placement.
rs A RandomState; ignored for hardcoded placement.

Returns
A tuple of a new frozen circuit with the qubits placed and a mapping from input qubits or nodes to output qubits.

Raises
CouldNotPlaceError if the given problem_topology is not present in the hardcoded mapping.

__eq__

View source

Return self==value.