小编use*_*500的帖子

用sympy.physics.quantum简化量子表达

与python同情:

from sympy import sqrt
from sympy.physics.quantum import Bra,Ket,qapply
superpos = (Ket('Dead')+Ket('Alive'))/sqrt(2)
d = qapply(Bra('Dead')*superpos)
Run Code Online (Sandbox Code Playgroud)

它给:

sqrt(2)*<Dead|Alive>/2 + sqrt(2)*<Dead|Dead>/2
Run Code Online (Sandbox Code Playgroud)

如何将'Dead'和'Alive'设置为正交状态,以便d.doit()给出:

sqrt(2)/2
Run Code Online (Sandbox Code Playgroud)

(我只能这样做:

d.subs(Bra('Dead')*Ket('Dead'),1).subs(Bra('Dead')*Ket('Alive'),0)
Run Code Online (Sandbox Code Playgroud)

但我相信有更好的方法)

python sympy states orthogonal

13
推荐指数
1
解决办法
514
查看次数

标签 统计

orthogonal ×1

python ×1

states ×1

sympy ×1