PiecewiseLinearPauliRotations
class qiskit.circuit.library.PiecewiseLinearPauliRotations(num_state_qubits=None, breakpoints=None, slopes=None, offsets=None, basis='Y', name='pw_lin')
Bases: FunctionalPauliRotations
Rotações de Pauli com controle linear por partes.
Para uma função linear por partes (não necessariamente contínua) , que é definida por meio de pontos de interrupção, inclinações e deslocamentos da seguinte forma. Suponha que os pontos de interrupção sejam um subconjunto de , em que é o número de qubits de estado. Mais adiante, denote as inclinações e os deslocamentos correspondentes por e , respectivamente. Então, f(x) é definido como:
onde assumimos implicitamente .
Parâmetros
- num_state_qubits (int | None) – O número de qubits que representam o estado.
- breakpoints (list[int] | None) – Os pontos de interrupção para definir a função linear por partes. Padroniza para
[0]. - slopes (list[float] | np.ndarray | None) – As inclinações de diferentes segmentos da função linear por partes. Padroniza para
[1]. - offsets (list[float] | np.ndarray | None) – Os deslocamentos para diferentes segmentos da função linear por partes. Padroniza para
[0]. - basis (str) – O tipo de rotação Pauli (
'X','Y','Z'). - name (str) – O nome do circuito.
Atributos
breakpoints
Os pontos de interrupção da função linear por partes.
A função é linear nos intervalos [point_i, point_{i+1}] onde o último ponto é implicitamente 2**(num_state_qubits + 1).
contains_zero_breakpoint
Se 0 é o primeiro ponto de interrupção.
Retorna
True, se 0 for o primeiro ponto de interrupção; caso contrário, False.
mapped_offsets
Os offsets mapeados para a representação interna.
Retorna
Os offsets mapeados.
mapped_slopes
As inclinações mapeadas para a representação interna.
Retorna
As encostas mapeadas.
offsets
Os deslocamentos da função linear por partes.
A função é linear nos intervalos [point_i, point_{i+1}] onde o último ponto é implicitamente 2**(num_state_qubits + 1).
slopes
As inclinações da função linear por partes.
A função é linear nos intervalos [point_i, point_{i+1}] onde o último ponto é implicitamente 2**(num_state_qubits + 1).
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