首先,我确信 Wolfram 的答案是正确的,因为两个三明治矩阵是特征向量矩阵,所以答案必须采用 eigne 基的形式。
所以,问题是,我在Python代码中做错了什么?是5的平方根吗?有没有办法正确书写?
Wolfram(正确答案):
Python 代码(错误答案):
在python中,我尝试了另外三个矩阵,它们不包含任何带有平方根的元素,它给出了正确的答案,所以我认为我的问题是如何在矩阵中正确编写它们?
Wolfram 进行符号计算。 Numpy 数值。
如果你想比较可比的东西,你也需要在Python端使用符号计算
import sympy
A = sympy.matrices.Matrix([[2,2],[1+sympy.sqrt(5), 1-sympy.sqrt(5)]])
B = sympy.matrices.Matrix([[0,1],[1,1]])
C = A**-1
sympy.pretty_print(sympy.simplify(C @ B @ A))
→
⎡1 √5 ⎤
⎢─ + ── 0 ⎥
⎢2 2 ⎥
⎢ ⎥
⎢ 1 √5⎥
⎢ 0 ─ - ──⎥
⎣ 2 2 ⎦