Skip to main content
IBM Quantum Platform

PiecewiseLinearPauliRotations

class qiskit.circuit.library.PiecewiseLinearPauliRotations(num_state_qubits=None, breakpoints=None, slopes=None, offsets=None, basis='Y', name='pw_lin')

GitHub

Basi: FunctionalPauliRotations

Rotazioni di Pauli controllate in modo lineare.

Per una funzione lineare continua (non necessariamente continua) f(x)f(x), definita attraverso punti di interruzione, pendenze e offset come segue. Supponiamo che i breakpoint (x0,...,xJ)(x_0, ..., x_J) siano un sottoinsieme di [0,2n1][0, 2^n-1], dove nn è il numero di qubit di stato. Più avanti, si indicheranno le pendenze e gli offset corrispondenti rispettivamente con aja_j e bjb_j. Allora f(x) è definita come:

f(x)={0,x<x0aj(xxj)+bj,xjx<xj+1f(x) = \begin{cases} 0, x < x_0 \\ a_j (x - x_j) + b_j, x_j \leq x < x_{j+1} \end{cases}

dove si assume implicitamente xJ+1=2nx_{J+1} = 2^n.

Parametri

  • num_state_qubits (int | None) – Il numero di qubit che rappresentano lo stato.
  • breakpoints (list[int] | None) – I punti di interruzione per definire la funzione lineare a pezzi. L'impostazione predefinita è [0].
  • slopes (list[float] | np.ndarray | None) – Le pendenze per i diversi segmenti della funzione lineare a pezzi. L'impostazione predefinita è [1].
  • offsets (list[float] | np.ndarray | None) – Gli offset per i diversi segmenti della funzione lineare a pezzi. L'impostazione predefinita è [0].
  • basis (str) – Il tipo di rotazione Pauli ('X', 'Y', 'Z').
  • name (str) – Il nome del circuito.

Attributi

breakpoints

I punti di discontinuità della funzione lineare a tratti.

La funzione è lineare negli intervalli [point_i, point_{i+1}] dove l'ultimo punto è implicitamente 2**(num_state_qubits + 1).

contains_zero_breakpoint

Se 0 è il primo punto di interruzione.

Risultati

Vero, se 0 è il primo punto di interruzione, altrimenti Falso.

mapped_offsets

Gli offset mappati nella rappresentazione interna.

Risultati

Gli offset mappati.

mapped_slopes

Le pendenze mappate nella rappresentazione interna.

Risultati

I pendii mappati.

offsets

I punti di intersezione della funzione lineare a tratti.

La funzione è lineare negli intervalli [point_i, point_{i+1}] dove l'ultimo punto è implicitamente 2**(num_state_qubits + 1).

slopes

Le pendenze della funzione lineare a tratti.

La funzione è lineare negli intervalli [point_i, point_{i+1}] dove l'ultimo punto è implicitamente 2**(num_state_qubits + 1).

name

Tipo: str

Un nome leggibile per il circuito.

Esempio

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit

Metodi

evaluate

evaluate(x)

GitHub

Valutare in modo classico la rotazione lineare a tratti.

Parametri

x (float) – Valore da valutare.

Risultati

Valore della funzione lineare continua in corrispondenza di x.

Tipo di restituzione

mobile

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.