与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)
但我相信有更好的方法)