問題描述
已知實際門矩陣()和理想門矩陣(),求實際門的保真度。
思路
用QPT(quantum process tomography)將U矩陣轉化爲矩陣,然後求保真度。
具體的計算可直接調用qutip的相關接口。
實例
單比特門
理想門爲,實際門爲
矩陣形式:
計算過程:
import numpy as np
from scipy.linalg import expm
import qutip as qt
# 已知U_ideal和U_meas
U_ideal = expm(-1j/2*sigma_x*PI/2)
delta = 5/180*PI
U_meas = expm(-1j/2*sigma_x*(PI/2+delta))
# 將U矩陣轉化爲chi矩陣
U_psi_ideal = qt.Qobj(U_ideal)
U_rho_ideal = qt.spre(U_psi_ideal) * qt.spost(U_psi_ideal.dag())
U_psi_meas = qt.Qobj(U_meas)
U_rho_meas = qt.spre(U_psi_meas) * qt.spost(U_psi_meas.dag())
op_basis = [[qt.qeye(2), qt.sigmax(), qt.sigmay(), qt.sigmaz()]]
op_label = [["i", "x", "y", "z"]]
chi_ideal = qt.qpt(U_rho_ideal, op_basis)
chi_meas = qt.qpt(U_rho_meas, op_basis)
# 由chi矩陣計算門保真度
fidelity = qt.process_fidelity(qt.Qobj(chi_ideal),qt.Qobj(chi_meas))
print(f'fidelity:{fidelity:.4f}')
結果
fidelity:0.9981
注:有了矩陣,也可以直接可視化看一下QPT的結果。
# plot process tomography
fig = plt.figure(figsize=(14, 6))
ax1 = fig.add_subplot(121, projection='3d')
ax2 = fig.add_subplot(122, projection='3d')
qt.qpt_plot_combined(chi_ideal, op_label, ax=ax1)
qt.qpt_plot_combined(chi_meas, op_label, ax=ax2)
ax1.set_title(r'$U_{ideal}$')
ax2.set_title(r'$U_{meas}$')
兩比特門
todo