LinearPauliRotations
class qiskit.circuit.library.LinearPauliRotations(num_state_qubits=None, slope=1, offset=0, basis='Y', name='LinRot')
Bases: FunctionalPauliRotations
Rotação X, Y ou Z com controle linear.
Para um registro de qubits de estado , um qubit de destino e a base 'Y' , esse circuito funciona como:
q_0: ─────────────────────────■───────── ... ──────────────────────
│
.
│
q_(n-1): ─────────────────────────┼───────── ... ───────────■──────────
┌────────────┐ ┌───────┴───────┐ ┌─────────┴─────────┐
q_n: ─┤ RY(offset) ├──┤ RY(2^0 slope) ├ ... ┤ RY(2^(n-1) slope) ├
└────────────┘ └───────────────┘ └───────────────────┘Isso pode, por exemplo, ser usado para aproximar funções lineares, com slope e offset e a base 'Y':
Como para argumentos pequenos esse operador pode ser usado para aproximar funções lineares.
Parâmetros
- num_state_qubits (int | None) – O número de qubits que representam o estado .
- slope (float) – A inclinação da rotação controlada.
- offset (float) – O deslocamento da rotação controlada.
- basis (str) – O tipo de rotação Pauli ("X", "Y", "Z").
- name (str) – O nome do objeto de circuito.
Atributos
offset
O ângulo da rotação de deslocamento do qubit único no qubit de destino.
Antes de aplicar as rotações controladas, uma única rotação de ângulo offset é aplicada ao qubit de destino.
Retorna
O ângulo de deslocamento.
slope
O fator multiplicativo no ângulo de rotação das rotações controladas.
Os ângulos de rotação são slope * 2^0, slope * 2^1,..., slope * 2^(n-1) onde n é o número de qubits de estado.
Retorna
O ângulo de rotação comum em todas as rotações controladas.
name
Tipo: str
Um nome legível por humanos para o circuito.
Exemplo
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit