运算符/状态助手函数#
将算符映射到相应的本征态,反之亦然
它包含一个具有本征态算子对的全局字典。如果创建了一个新的状态运算符对,则此字典也应更新。
它还包含函数运算符u to u state和state u to u运算符,用于两者之间的映射。它们可以处理运算符和状态的类和实例。有关详细信息,请参见各个功能说明。
TODO列表:-使用状态运算符对的完整列表更新字典
- sympy.physics.quantum.operatorset.operators_to_state(operators, **options)[源代码]#
返回给定运算符或运算符集的本征状态
用于将运算符类映射到其关联状态的全局函数。它接受一个运算符或一组运算符,并返回与这些运算符关联的状态。
这个函数可以同时处理给定运算符的两个实例,也可以只处理类本身(即XOp()和XOp)
有多个用例需要考虑:
1) 传递一个类或一组类:首先,我们尝试实例化这些运算符的默认实例。如果失败,则只返回类。如果我们成功地实例化了默认实例,那么我们将尝试在操作符实例上调用state.u operatorsu tou state。如果失败,则返回类。否则,返回由u operators_返回到u state的实例。
2) 传递一个实例或一组实例:在本例中,对传递的实例调用state。如果失败,则返回状态类。如果方法返回实例,则返回该实例。
在这两种情况下,如果stateu映射字典中不存在运算符类或集,则不返回任何运算符。
- 参数:
arg:运算符或集合
要映射到状态的运算符或运算符集的类或实例
实例
>>> from sympy.physics.quantum.cartesian import XOp, PxOp >>> from sympy.physics.quantum.operatorset import operators_to_state >>> from sympy.physics.quantum.operator import Operator >>> operators_to_state(XOp) |x> >>> operators_to_state(XOp()) |x> >>> operators_to_state(PxOp) |px> >>> operators_to_state(PxOp()) |px> >>> operators_to_state(Operator) |psi> >>> operators_to_state(Operator()) |psi>
- sympy.physics.quantum.operatorset.state_to_operators(state, **options)[源代码]#
返回与给定本征状态对应的运算符或运算符集
一种全局函数,用于将状态类映射到其关联的运算符或运算符集。它需要state类或实例。
要么同时处理XKet()和XKet()的实例
有多个用例需要考虑:
1) 传递一个state类:在本例中,我们首先尝试实例化该类的默认实例。如果成功,则尝试在该实例上调用state.u stateu tou运算符。如果创建默认实例或调用u state_到u运算符失败,则返回一个运算符类或一组运算符类。否则,将返回相应的运算符实例。
2) 返回一个state实例:这里是state。如果失败,则返回一个类或一组运算符类。否则,将返回实例。
在这两种情况下,如果状态映射中不存在状态类,则不返回任何状态。
- 参数:
arg:StateBase类或实例(或子类)
要映射到运算符或运算符集的状态的类或实例
实例
>>> from sympy.physics.quantum.cartesian import XKet, PxKet, XBra, PxBra >>> from sympy.physics.quantum.operatorset import state_to_operators >>> from sympy.physics.quantum.state import Ket, Bra >>> state_to_operators(XKet) X >>> state_to_operators(XKet()) X >>> state_to_operators(PxKet) Px >>> state_to_operators(PxKet()) Px >>> state_to_operators(PxBra) Px >>> state_to_operators(XBra) X >>> state_to_operators(Ket) O >>> state_to_operators(Bra) O