LinearPauliRotations
class qiskit.circuit.library.LinearPauliRotations(num_state_qubits=None, slope=1, offset=0, basis='Y', name='LinRot')
Bases : FunctionalPauliRotations
Rotation X, Y ou Z à commande linéaire.
Pour un registre de qubits d'état , un qubit cible et la base 'Y' ce circuit agit comme :
q_0: ─────────────────────────■───────── ... ──────────────────────
│
.
│
q_(n-1): ─────────────────────────┼───────── ... ───────────■──────────
┌────────────┐ ┌───────┴───────┐ ┌─────────┴─────────┐
q_n: ─┤ RY(offset) ├──┤ RY(2^0 slope) ├ ... ┤ RY(2^(n-1) slope) ├
└────────────┘ └───────────────┘ └───────────────────┘Cela peut par exemple être utilisé pour approximer des fonctions linéaires, avec slope et offset et la base 'Y':
Étant donné que pour de petits arguments , cet opérateur peut être utilisé pour approximer des fonctions linéaires.
Paramètres
- num_state_qubits (int | None) – Le nombre de qubits représentant l'état .
- slope (float) – La pente de la rotation contrôlée.
- offset (float) – Le décalage de la rotation contrôlée.
- basis (str) – Le type de rotation de Pauli ('X', 'Y', 'Z').
- name (str) – Le nom de l'objet circuit.
Attributs
offset
L'angle de la rotation du qubit unique sur le qubit cible.
Avant d'appliquer les rotations contrôlées, une rotation unique de l'angle offset est appliquée au qubit cible.
Retours
L'angle de décalage.
slope
Le facteur multiplicatif de l'angle de rotation des rotations contrôlées.
Les angles de rotation sont slope * 2^0, slope * 2^1,..., slope * 2^(n-1) où n est le nombre de qubits d'état.
Retours
L'angle de rotation commun à toutes les rotations contrôlées.
name
Type : str
Un nom lisible par l'homme pour le circuit.
Exemple
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit