diff --git a/ucc/compile.py b/ucc/compile.py index 6ee1559..f48beaa 100644 --- a/ucc/compile.py +++ b/ucc/compile.py @@ -50,9 +50,10 @@ def compile( # Translate to Qiskit Circuit object qiskit_circuit = transpile(circuit, "qiskit") - compiled_circuit = UCCDefault1().run( + compiled_circuit = UCCDefault1( + coupling_list=get_backend_connectivity(target_device) + ).run( qiskit_circuit, - coupling_list=get_backend_connectivity(target_device), ) # Translate the compiled circuit to the desired format diff --git a/ucc/transpilers/ucc_defaults.py b/ucc/transpilers/ucc_defaults.py index 7fb6c82..3bd604c 100644 --- a/ucc/transpilers/ucc_defaults.py +++ b/ucc/transpilers/ucc_defaults.py @@ -27,7 +27,7 @@ class UCCDefault1: - def __init__(self, local_iterations=1): + def __init__(self, local_iterations=1, coupling_list=None): self.pass_manager = PassManager() self._1q_basis = ["rz", "rx", "ry", "h"] self._2q_basis = ["cx"] @@ -43,6 +43,10 @@ def __init__(self, local_iterations=1): }, } self.add_local_passes(local_iterations) + self.add_map_passes(coupling_list) + self.pass_manager.append( + BasisTranslator(sel, target_basis=self.target_basis) + ) @property def default_passes(self): @@ -103,13 +107,8 @@ def add_map_passes(self, coupling_list=None): self.pass_manager.append(VF2PostLayout(coupling_map=coupling_map)) self.pass_manager.append(ApplyLayout()) - def run(self, circuits, coupling_list=None): - self.add_map_passes(coupling_list) - self.pass_manager.append( - BasisTranslator(sel, target_basis=self.target_basis) - ) - out_circuits = self.pass_manager.run(circuits) - return out_circuits + def run(self, circuits): + return self.pass_manager.run(circuits) def _get_trial_count(default_trials=5):