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

베이스: FunctionalPauliRotations

조각 단위로 선형 제어되는 폴리 회전.

중단점, 기울기 및 오프셋을 통해 다음과 같이 정의되는 단편적인 선형(반드시 연속적일 필요는 없음) 함수 f(x)f(x) 의 경우. 중단점 (x0,...,xJ)(x_0, ..., x_J)[0,2n1][0, 2^n-1] 의 하위 집합이라고 가정하고 nn 은 상태 큐비트 수입니다. 또한 해당 슬로프와 오프셋을 각각 aja_jbjb_j 으로 표시합니다. 그러면 f(x)는 다음과 같이 정의됩니다:

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}

여기서 우리는 암묵적으로 xJ+1=2nx_{J+1} = 2^n.

매개변수

  • num_state_qubits (int | None) – 상태를 나타내는 큐비트 수입니다.
  • breakpoints (list[int] | None) – 조각 단위 선형 함수를 정의하는 중단점입니다. 기본값은 [0] 입니다.
  • slopes (list[float] | np.ndarray | None) – 조각 선형 함수의 여러 세그먼트에 대한 기울기입니다. 기본값은 [1] 입니다.
  • offsets (list[float] | np.ndarray | None) – 조각별 선형 함수의 여러 세그먼트에 대한 오프셋입니다. 기본값은 [0] 입니다.
  • basis (str) – 폴리 로테이션 유형 ('X', 'Y', 'Z').
  • name (str) – 서킷의 이름입니다.

속성

breakpoints

조각 단위 선형 함수의 중단점입니다.

이 함수는 [point_i, point_{i+1}] 구간에서 선형이며, 마지막 지점은 암시적으로 2**(num_state_qubits + 1) 입니다.

contains_zero_breakpoint

0이 첫 번째 중단점인지 여부.

리턴

0이 첫 번째 중단점인 경우 참, 그렇지 않으면 거짓입니다.

mapped_offsets

오프셋은 내부 표현에 매핑됩니다.

리턴

매핑된 오프셋입니다.

mapped_slopes

내부 표현에 매핑된 경사면입니다.

리턴

매핑된 경사면입니다.

offsets

구간별 선형 함수의 절편.

이 함수는 [point_i, point_{i+1}] 구간에서 선형이며, 마지막 지점은 암시적으로 2**(num_state_qubits + 1) 입니다.

slopes

구간별 선형 함수의 기울기.

이 함수는 [point_i, point_{i+1}] 구간에서 선형이며, 마지막 지점은 암시적으로 2**(num_state_qubits + 1) 입니다.

name

유형: str

사람이 읽을 수 있는 회로의 이름입니다.

예제

from qiskit import QuantumCircuit

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

메소드

evaluate

evaluate(x)

GitHub

조각 단위의 선형 회전을 고전적으로 평가합니다.

매개변수

x (float) – 평가할 가치.

리턴

X에서 부분 선형 함수의 값입니다.

리턴 유형

부동

이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.