У меня проблема с симуляцией. Мне нужно смоделировать ворота Адамара, интегрируя уравнение Шредингера (эволюция во времени).
Это требует, чтобы я построил оператор Гамильтона, связанный с воротами Адамара, и выполнил эволюцию во времени, поэтому мне также понадобятся собственные значения.
Моя проблема в том, что все ресурсы, которые я могу найти о квантовых вентилях, находятся в унитарном формализме (дискретное время), мне не удается найти полезные ресурсы для случая непрерывного времени, особенно с собственными значениями.
Из Quantum Computation and Quantum Information
Нильсена и Чуанга, стр. 83
Таким образом, существует однозначное соответствие между описанием динамики с дискретным временем с использованием унитарных операторов и описанием с непрерывным временем с использованием гамильтонианов.
Я просто не знаю, как найти гамильтониан, связанный с воротами Адамара.
Я нашел несколько примеров, таких как документ A Sequence of Quantum Gates, стр. 5, но он не масштабируется более чем на один кубит и не упоминает собственное разложение, которое требуется для эффективной эволюции во времени, поскольку H легко становится огромной матрицей, и это трудно возвести в степень.
Чтобы получить гамильтониан, который генерирует унитарную матрицу (умножить на i), вы логарифмируете унитарную матрицу.
Вы можете использовать такие инструменты, как Matlab или scipy, для вычисления матричных логарифмов или делать это вручную с помощью собственного разложения. Например:
>>> import scipy.linalg
>>> scipy.linalg.logm([[1, 1], [1, -1]]).round(1)
array([[ 0.3+0.5j, 0.0-1.1j],
[ 0.0-1.1j, 0.3+2.7j]])
Н. Дева
Марек