LinearPauliRotations
class qiskit.circuit.library.LinearPauliRotations(num_state_qubits=None, slope=1, offset=0, basis='Y', name='LinRot')
Basen: FunctionalPauliRotations
Linear gesteuerte X-, Y- oder Z-Drehung.
Für ein Register von Zustands-Qubits , ein Ziel-Qubit und die Basis 'Y' funktioniert diese Schaltung wie folgt:
q_0: ─────────────────────────■───────── ... ──────────────────────
│
.
│
q_(n-1): ─────────────────────────┼───────── ... ───────────■──────────
┌────────────┐ ┌───────┴───────┐ ┌─────────┴─────────┐
q_n: ─┤ RY(offset) ├──┤ RY(2^0 slope) ├ ... ┤ RY(2^(n-1) slope) ├
└────────────┘ └───────────────┘ └───────────────────┘Dies kann zum Beispiel verwendet werden, um lineare Funktionen zu approximieren, mit slope und offset und der Basis 'Y':
Da dieser Operator für kleine Argumente verwendet werden kann, um lineare Funktionen zu approximieren.
Parameter
- num_state_qubits (int | None) – Die Anzahl der Qubits, die den Zustand darstellen.
- slope (float) – Die Steigung der kontrollierten Drehung.
- offset (float) – Der Offset der kontrollierten Drehung.
- basis (str) – Die Art der Pauli-Drehung ('X', 'Y', 'Z').
- name (str) – Der Name des Schaltkreisobjekts.
Attribute
offset
Der Winkel der Offset-Drehung des einzelnen Qubits auf dem Ziel-Qubit.
Vor der Anwendung der kontrollierten Drehungen wird eine einzelne Drehung des Winkels offset auf das Ziel-Qubit angewendet.
Rückgabe
Der Versatzwinkel.
slope
Der Multiplikationsfaktor im Drehwinkel der kontrollierten Drehungen.
Die Drehwinkel sind slope * 2^0, slope * 2^1,..., slope * 2^(n-1) , wobei n die Anzahl der Zustands-Qubits ist.
Rückgabe
Der für alle kontrollierten Drehungen gemeinsame Drehwinkel.
name
Typ: str
Ein von Menschen lesbarer Name für den Stromkreis.
Beispiel
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit