Skip to main content
IBM Quantum Platform

OneQubitEulerDecomposer

class qiskit.synthesis.OneQubitEulerDecomposer(basis='U3', use_dag=False)

GitHub

베이스: object

1-큐비트 단항식을 오일러 각도 회전으로 분해하는 클래스입니다.

결과 분해는 3개의 오일러 회전 각도 파라미터 (θ,ϕ,λ)(\theta, \phi, \lambda) 와 위상 파라미터 γ\gamma 로 파라미터화됩니다. 입력 단위에 대한 파라미터 값은 분해 기준에 따라 달라집니다. 허용되는 염기 및 결과 회로는 다음 표에 나와 있습니다. 오일러 기저가 아닌 기저( U3U3, U1XU1X, RRRR )의 경우 ZYZZYZ 오일러 매개변수가 사용됩니다.

기본
오일러 각도 기준
분해 회로
'ZYZ'Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγRZ(ϕ).RY(θ).RZ(λ)e^{i\gamma} R_Z(\phi).R_Y(\theta).R_Z(\lambda)
'ZXZ'Z(ϕ)X(θ)Z(λ)Z(\phi) X(\theta) Z(\lambda)eiγRZ(ϕ).RX(θ).RZ(λ)e^{i\gamma} R_Z(\phi).R_X(\theta).R_Z(\lambda)
'XYX'X(ϕ)Y(θ)X(λ)X(\phi) Y(\theta) X(\lambda)eiγRX(ϕ).RY(θ).RX(λ)e^{i\gamma} R_X(\phi).R_Y(\theta).R_X(\lambda)
'XZX'X(ϕ)Z(θ)X(λ)X(\phi) Z(\theta) X(\lambda)eiγRX(ϕ).RZ(θ).RX(λ)e^{i\gamma} R_X(\phi).R_Z(\theta).R_X(\lambda)
‘U3’Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγU3(θ,ϕ,λ)e^{i\gamma} U_3(\theta,\phi,\lambda)
‘U321’Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγU3(θ,ϕ,λ)e^{i\gamma} U_3(\theta,\phi,\lambda)
'U'Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγU3(θ,ϕ,λ)e^{i\gamma} U_3(\theta,\phi,\lambda)
'PSX'Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγU1(ϕ+π).RX(π2).e^{i\gamma} U_1(\phi+\pi).R_X\left(\frac{\pi}{2}\right). U1(θ+π).RX(π2).U1(λ)U_1(\theta+\pi).R_X\left(\frac{\pi}{2}\right).U_1(\lambda)
'ZSX'Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγRZ(ϕ+π).X.e^{i\gamma} R_Z(\phi+\pi).\sqrt{X}. RZ(θ+π).X.RZ(λ)R_Z(\theta+\pi).\sqrt{X}.R_Z(\lambda)
'ZSXX'Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγRZ(ϕ+π).X.RZ(θ+π).X.RZ(λ)e^{i\gamma} R_Z(\phi+\pi).\sqrt{X}.R_Z(\theta+\pi).\sqrt{X}.R_Z(\lambda) 또는 eiγRZ(ϕ+π).X.RZ(λ)e^{i\gamma} R_Z(\phi+\pi).X.R_Z(\lambda)
‘U1X’Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγU1(ϕ+π).RX(π2).e^{i\gamma} U_1(\phi+\pi).R_X\left(\frac{\pi}{2}\right). U1(θ+π).RX(π2).U1(λ)U_1(\theta+\pi).R_X\left(\frac{\pi}{2}\right).U_1(\lambda)
'RR'Z(ϕ)Y(θ)Z(λ)Z(\phi) Y(\theta) Z(\lambda)eiγR(π,ϕλ+π2).e^{i\gamma} R\left(-\pi,\frac{\phi-\lambda+\pi}{2}\right). R(θ+π,π2λ)R\left(\theta+\pi,\frac{\pi}{2}-\lambda\right)

__call__

__call__(unitary, simplify=True, atol=1e-12)

GitHub

단일 큐비트 게이트를 회로로 분해합니다.

매개변수

  • unitary (Operator |Gate | np.ndarray) – 1-큐비트 단일 행렬
  • simplify (bool) – 분해 시 게이트 수 감소 [기본값입니다: True].
  • atol (float) – 반환 회로를 단순화할 때 각도를 확인하기 위한 절대 허용 오차 [기본값: 1e-12].

리턴

분해된 단일 큐비트 게이트 회로

리턴 유형

QuantumCircuit

레이즈

QiskitError – 입력이 유효하지 않거나 합성이 실패한 경우.

디컴포저 초기화

지원되는 베이스는 다음과 같습니다: 'U', 'PSX', 'ZSXX', 'ZSX', 'U321', 'U3', 'U1X', 'RR', 'ZYZ', 'ZXZ', 'XYX', 'XZX'.

매개변수

  • basis (str) – 분해 기준 [기본값: 'U3']
  • QuantumCircuituse_dag (bool) – 이 조건이 참이라면, 디컴포저 호출의 반환값은 대신 객체가 DAGCircuit 됩니다.

레이즈

QiskitError – 입력 기준이 인식되지 않는 경우.


속성

basis

분해 기준입니다.


메소드

angles

angles(unitary)

GitHub

입력 배열에 대한 오일러 각을 반환합니다.

매개변수

unitary (ndarray) – 2×22\times2 단일 매트릭스.

리턴

(theta, phi, lambda).

리턴 유형

튜플

angles_and_phase

angles_and_phase(unitary)

GitHub

입력 배열에 대한 오일러 각과 위상을 반환합니다.

매개변수

unitary (ndarray) – 2×22\times2

리턴

(theta, phi, lambda, phase).

리턴 유형

튜플

build_circuit

build_circuit(gates, global_phase)

GitHub

게이트 목록에서 회로 또는 다그 객체를 반환합니다.

리턴 유형

QuantumCircuit | DAGCircuit

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