我以
Qobjevo
的形式定义一个与时间相关的算子,并将其传递给 sesolve()
来求解薛定谔方程。下面是 MWE。
from qutip import *
import numpy as np
tlist = np.linspace(0, np.pi / 2)
H = [
sigmaz(),
[sigmax(), 'cos(t)']
]
psi0 = basis(2, 1)
result = sesolve(H, psi0, tlist)
现在我想检查
tlist
中给定时间的时间相关哈密顿量。我如何获得每个时间tlist[i]
的哈密顿量列表?我可以参考哪个qutip函数?
您可以简单地定义一个在每个时间步返回哈密顿量的函数:
def h(t):
return sigmaz() + np.cos(t) * sigmax()
要访问您使用的进化状态:
psi_t = result.state
它为您提供了时间演变状态的列表。
哈密顿量的 qObject 列表为:
sx,sy,sz = sigmax,sigmay,sigmaz
Ht = [sz + np.cos(t)*sx for t in tlist]
或列表 oa 数组
sx,sy,sz = sigmax,sigmay,sigmaz
Ht = [sz.full() + np.cos(t)*sx.full() for t in tlist]