计算 qutip 的 Qobjevo 运算符

问题描述 投票:0回答:2

我以

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函数?

python quantum-computing qutip
2个回答
0
投票

您可以简单地定义一个在每个时间步返回哈密顿量的函数:

def h(t):
    return sigmaz() + np.cos(t) * sigmax()

0
投票

要访问您使用的进化状态:

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]
© www.soinside.com 2019 - 2024. All rights reserved.