Почему есть разница в векторах состояния, но нет разницы в визуализациях?
Есть ли какая-нибудь другая визуализация, чтобы показать различия?

Qiskit: 0.23.3
питон: 3.8

circuit-1 + statevector:
q_0: 
[1.+0.j 0.+0.j] ==> +1

circuit-2 + statevector
     ┌───┐┌───┐┌───┐┌───┐┌───┐
q_0: ┤ X ├┤ H ├┤ X ├┤ H ├┤ X ├
     └───┘└───┘└───┘└───┘└───┘
[-1.+0.j -0.-0.j] ==> -1

Пример кода

import numpy as np
from qiskit import *
import qiskit.tools.visualization as vis
import matplotlib. pyplot as plt
from qiskit import Aer

circ = QuantumCircuit(1)

circ.x(0)
circ.h(0)
circ.x(0)
circ.h(0)
circ.x(0)

backend = Aer.get_backend('statevector_simulator')
result = execute(circ, backend).result()
statevector = result.get_statevector()

vis.plot_bloch_multivector(statevector)
vis.plot_state_city(statevector)
vis.plot_state_qsphere(statevector)
vis.plot_state_paulivec(statevector)
circ.draw(output='mpl')
print(np.around(statevector,5))
plt.show()

Визуализации двух векторов состояния равны !! пример 1 пример 2

0
Dida 13 Фев 2021 в 01:49

1 ответ

Лучший ответ

Мне это кажется ошибкой (я сообщил здесь)

В любом случае я рекомендую вам калейдоскоп для визуализации состояний. Имеет интерактивные графики. Вот ваш пример (рефакторинг для краткости):

from qiskit import QuantumCircuit
from qiskit.quantum_info import Statevector
from kaleidoscope import qsphere

circ = QuantumCircuit(1)

circ.x(0)
circ.h(0)
circ.x(0)
circ.h(0)
circ.x(0)

state = Statevector.from_instruction(circ)
qsphere(state)

enter image description here

Сравните цвет с другим примером:

circ = QuantumCircuit(1)

state = Statevector.from_instruction(circ)
qsphere(state)

enter image description here

Разница в цвете - это фаза. В первом случае это π.

0
luciano 14 Фев 2021 в 08:40