Wolfram 中向量的精确正交化

Exact orthogonalization of vectors in Wolfram

我有一个矩阵,我需要对其特征向量进行正交化。

这基本上就是我所需要的,但形式完全一样。

这是我的 wolfram 输入

(orthogonolize(eigenvectors({{146, 112, 78, 17, 122}, {112, 86, 60, 13, 94}, {78, 60, 42 , 9, 66}, {17, 13, 9, 2, 14}, {122, 94, 66, 14, 104}})))

这给了我浮点数,而我需要精确的形式。

有什么方法可以解决这个问题?

Wolfram Mathematica,而不是 WolframAlpha,这是一个完全不同的产品,具有不同的规则并给出不同的结果,鉴于此

FullSimplify[Orthogonalize[Eigenvectors[{
  {146, 112, 78, 17, 122}, {112, 86, 60, 13, 94}, {78, 60, 42 , 9, 66}, 
  {17, 13, 9, 2, 14}, {122, 94, 66, 14, 104}}]]]

returns 这个确切的形式

{{Sqrt[121/342 + 52/(9*Sqrt[35587])], Sqrt[5/38 + 18/Sqrt[35587]], 
  Sqrt[25/342 + 64/(9*Sqrt[35587])], Sqrt[7/38 - 26/Sqrt[35587]]/3, 
  2*Sqrt[2/19 - 7/Sqrt[35587]]},
 {-1/3*Sqrt[121/38 - 52/Sqrt[35587]], -Sqrt[5/38 - 18/Sqrt[35587]],
  Sqrt[25/38 - 64/Sqrt[35587]]/3, -1/3*Sqrt[7/38 + 26/Sqrt[35587]],
  Sqrt[8/19 + 28/Sqrt[35587]]}, 
 {3/Sqrt[35], -Sqrt[5/7], 0, 0, 1/Sqrt[35]},
 {-11/Sqrt[5110], -Sqrt[5/1022], 0, Sqrt[70/73], 4*Sqrt[2/2555]},
 {-17/(3*Sqrt[2774]), -7/Sqrt[2774], Sqrt[146/19]/3, Sqrt[2/1387]/3, -9*Sqrt[2/1387]}}

在你依赖它之前,至少想出两种不同的方法来检查它的正确性。

最后三个可以稍微简化

1/Sqrt[35]*{3,-5,0,0,1},
1/Sqrt[5110]*{-11,-5,0,70,8},
1/(3*Sqrt[2774])*{-17,-21,146,2,-54}

但我还没有找到将前两个简化为当前大小的三分之一的方法。其他人能看到这样做的方法吗?请仔细检查这些结果。