From 36f38d0d5df6ef72da0dbcb08c5be7734217917b Mon Sep 17 00:00:00 2001 From: Boxi Li Date: Mon, 7 Oct 2024 13:41:32 +0200 Subject: [PATCH] Fix a bug in add_1q_gate (#254) --- src/qutip_qip/circuit/circuit.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/qutip_qip/circuit/circuit.py b/src/qutip_qip/circuit/circuit.py index f7819968..dd413c21 100644 --- a/src/qutip_qip/circuit/circuit.py +++ b/src/qutip_qip/circuit/circuit.py @@ -284,7 +284,7 @@ def add_gates(self, gates): def add_1q_gate( self, name, - start=0, + start=None, end=None, qubits=None, **kwargs, @@ -309,7 +309,14 @@ def add_1q_gate( See :class:`~.QubitCircuit.add_gate`. """ if qubits is None: + if start is None or end is None: + raise ValueError( + "Both start and end must be specified if target qubits" + " are not provided." + ) qubits = range(start, end + 1) + if not isinstance(qubits, Iterable): + qubits = [qubits] for q in qubits: self.add_gate(name, targets=q, **kwargs)