iqm.qiskit_iqm.iqm_naive_move_pass.transpile_to_IQM#
- iqm.qiskit_iqm.iqm_naive_move_pass.transpile_to_IQM(circuit: QuantumCircuit, backend: IQMBackendBase, *, initial_layout: Layout | dict | list | None = None, perform_move_routing: bool = True, optimize_single_qubits: bool = True, ignore_barriers: bool = False, remove_final_rzs: bool = True, existing_moves_handling: ExistingMoveHandlingOptions | None = None, restrict_to_qubits: list[int] | list[str] | None = None, **qiskit_transpiler_kwargs) QuantumCircuit#
- Customized transpilation to IQM backends. - Works with both the Crystal and Star architectures. - Note: When transpiling a circuit with MOVE gates, you might need to set - optimization_levellower. If- optimization_levelis set too high, the transpiler might add single qubit gates onto the resonator, which is not supported by the IQM Star architectures. If this in undesired, it is best to have the transpiler add the MOVE gates automatically, rather than manually adding them to the circuit.- Parameters:
- circuit (QuantumCircuit) – The circuit to transpile. 
- backend (IQMBackendBase) – The backend to transpile to. 
- initial_layout (Layout | dict | list | None) – The initial layout to use for the transpilation, same as - transpile().
- perform_move_routing (bool) – Whether to perform MOVE gate routing. 
- optimize_single_qubits (bool) – Whether to optimize single qubit gates away. 
- ignore_barriers (bool) – Whether to ignore barriers when optimizing single qubit gates away. 
- remove_final_rzs (bool) – Whether to remove the final z rotations. It is recommended always to set this to true as the final RZ gates do no change the measurement outcomes of the circuit. 
- existing_moves_handling (ExistingMoveHandlingOptions | None) – How to handle existing MOVE gates in the circuit, required if the circuit contains MOVE gates. 
- restrict_to_qubits (list[int] | list[str] | None) – Restrict the transpilation to only use these specific physical qubits. Note that you will also have to pass this information to - IQMBackend.run()using the- qubit_mappingparameter.
- qiskit_transpiler_kwargs – Arguments to be passed to the Qiskit transpiler. 
 
- Returns:
- Transpiled circuit ready for running on the backend. 
- Return type:
 
