diff --git a/qiskit/transpiler/passes/scheduling/calibration_creators.py b/qiskit/transpiler/passes/scheduling/calibration_creators.py index 5857a8ef3703..77abfb1b53be 100644 --- a/qiskit/transpiler/passes/scheduling/calibration_creators.py +++ b/qiskit/transpiler/passes/scheduling/calibration_creators.py @@ -45,11 +45,13 @@ def run(self, dag): Returns: DAGCircuit: A DAG with calibrations added to it. """ + bit_indices = {bit: index for index, bit in enumerate(dag.qubits)} + for node in dag.nodes(): if node.type == 'op': if self.supported(node.op): params = node.op.params - qubits = [_.index for _ in node.qargs] + qubits = [bit_indices[qarg] for qarg in node.qargs] schedule = self.get_calibration(params, qubits) diff --git a/releasenotes/notes/calibration-builder-index-fix-779f3f40fae040d8.yaml b/releasenotes/notes/calibration-builder-index-fix-779f3f40fae040d8.yaml new file mode 100644 index 000000000000..d90c669ffde5 --- /dev/null +++ b/releasenotes/notes/calibration-builder-index-fix-779f3f40fae040d8.yaml @@ -0,0 +1,5 @@ +--- +other: + - | + Qubit.index has been deprecated. The CalibrationCreator was still using + this functionality which this PR fixes.