将复杂特征向量与Synpy归一化
我正在解决一个依赖时间的复杂特征值问题,而我的矩阵是Hermitian。我的问题是,由于某种原因,我无法将特征向量归一化。这是使用特征向量之一的一个示例(其中r_1
是t
的真实函数)
import sympy as sp
from sympy.physics.quantum.dagger import Dagger
t= sp.symbols(r't , real=True)
r = sp.symbols(r'r_1, real=True)
v = ...
print(repr(v))
特征向量为:
Matrix([
[ 0],
[r_1**2/(4*t**3 - 8*t**2 + 4*t) - 1/t],
[ -r_1/(2*t - 2)],
[ 0],
[ 1],
[ 0],
[ 0],
[ 0]])
计算标准:
a = Dagger(v)*v
a[0]
给出
因此,归一化向量为:
v_N = v/sp.sqrt(a[0])
v_N
测试标准化给出:
Dagger(v_N)*v_N
or:
sp.simplify(Dagger(v_N)*v_N)
与1不同
I'm solving a time dependent complex eigenvalue problem where my matrix is hermitian. My problem is that for some reason I can't normalize the eigenvectors. This is one example using one of the eigenvectors (where r_1
is an real function of t
)
import sympy as sp
from sympy.physics.quantum.dagger import Dagger
t= sp.symbols(r't , real=True)
r = sp.symbols(r'r_1, real=True)
v = ...
print(repr(v))
The eigenvector is:
Matrix([
[ 0],
[r_1**2/(4*t**3 - 8*t**2 + 4*t) - 1/t],
[ -r_1/(2*t - 2)],
[ 0],
[ 1],
[ 0],
[ 0],
[ 0]])
Calculating the norm:
a = Dagger(v)*v
a[0]
gives
So the normalized vector is:
v_N = v/sp.sqrt(a[0])
v_N
Testing the normalization gives:
Dagger(v_N)*v_N
Or :
sp.simplify(Dagger(v_N)*v_N)
That is different than 1
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论