首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从量子位密度矩阵到Bloch向量的转换

从量子位密度矩阵到Bloch向量的转换
EN

Stack Overflow用户
提问于 2016-10-02 20:46:55
回答 1查看 560关注 0票数 0

给定一个量子位的2x2密度矩阵,如何计算表示该量子位的布洛赫球上的点?

例如,状态|0⟩-|1⟩有一个[[0.5,-0.5],[-0.5,0.5]]的密度矩阵,并且应该沿着X轴结束。但是密度矩阵[[0.5, 0], [0, 0.5]]在任何方向上都是不偏的,应该在原点结束。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-02 20:46:55

转换取决于几个任意的选择:

  • 你想要0⟩在顶部还是底部?
  • 你想要坐标系是右手还是左手?

假设你回答的是“底部”和“右手”,那么这个方法就可以做到:

代码语言:javascript
复制
def toBloch(matrix):
    [[a, b], [c, d]] = matrix
    x = complex(c + b).real
    y = complex(c - b).imag
    z = complex(d - a).real
    return x, y, z

通过选择和选择要否定的输出,您可以切换到其他选择。

测试一下:

代码语言:javascript
复制
print(toBloch([[1, 0],
               [0, 0]])) #Off, Z=-1
# (0.0, 0.0, -1.0)

print(toBloch([[0, 0],
               [0, 1]])) #On, Z=+1
# (0.0, 0.0, 1.0)

print(toBloch([[0.5, 0.5],
               [0.5, 0.5]])) #On+Off, X=-1
# (-1.0, 0.0, 0.0)

print(toBloch([[0.5, 0.5j],
               [-0.5j, 0.5]])) #On+iOff, Y=-1
# (0.0, -1.0, 0.0)

print(toBloch([[0.5, 0.0],
               [0.0, 0.5]])) #maximally mixed state, X=Y=Z=0
# (0.0, 0.0, 0.0)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39821543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档