iqm.qiskit_iqm.iqm_naive_move_pass.transpile_to_IQM#
- iqm.qiskit_iqm.iqm_naive_move_pass.transpile_to_IQM(circuit: QuantumCircuit, backend: IQMBackend | IQMFakeBackend, optimize_single_qubits: bool = True, ignore_barriers: bool = False, remove_final_rzs: bool = False, optimization_level: int | None = None) QuantumCircuit #
Basic function for transpiling to IQM backends. Currently works with Deneb and Garnet
- Parameters:
circuit (QuantumCircuit) – The circuit to be transpiled without MOVE gates.
backend (IQMBackend | IQMFakeBackend) – The target backend to compile to containing a single resonator.
optimize_single_qubits (bool) – Whether to optimize single qubit gates away (default = True).
ignore_barriers (bool) – Whether to ignore barriers when optimizing single qubit gates away (default = False).
remove_final_rzs (bool) – Whether to remove the final Rz rotations (default = False).
optimization_level (int | None) –
How much optimization to perform on the circuits as per Qiskit transpiler. Higher levels generate more optimized circuits, at the expense of longer transpilation time.
0: no optimization
1: light optimization (default)
2: heavy optimization
3: even heavier optimization
- Raises:
NotImplementedError – Thrown when the backend supports multiple resonators.
- Returns:
The transpiled circuit ready for running on the backend.
- Return type:
QuantumCircuit