如何在 MuPAD 中计算特征向量

How to Calculate Eigenvectors in MuPAD

我正在使用 Mupad 计算机代数系统来计算名为 A 的 3 X 3 矩阵的特征向量。

A := matrix([[3, 2, 1], [1, 3, 2], [0, 2, 6]]);

似乎有两种方法可以做到这一点。

使用线性代数包计算它:

export(linalg);
float(eigenvectors(A));

而另一个用数字计算:

numeric::eigenvectors(A)

我不会 post 这些操作的结果,因为输出一次运行几行。

我的问题是,使用这两种方法中的任何一种似乎都不能清楚地输出实际的特征向量 is/are 以及当我将结果与在线计算器(例如 here and here 进行比较时, MuPAD 答案不等同于在线资源

我计算的特征向量是否正确?

MuPAD 确实提供了与链接中提供的相同的正确答案。 MuPAD使用命令numeric::eigenvectors(A)给出的答案是:

    --
|
|
|  [7.201472338, 3.545095909, 1.253431753],
|
|
--

   +-                                            -+
   |  0.4097274422,  0.8600709534,  0.6400029533  |
   |                                              |
   |  0.4697503463,  0.3955281264, -0.7080821139  |,
   |                                              |
   |  0.7819578219, -0.3222350949,  0.2983553915  |
   +-                                            -+

                                                       --
                                                        |
                                                        |
   [1.423012071e-13, 3.657216627e-15, 2.253544688e-12]  |
                                                        |
                                                        |
                                                       --

矩阵的第一个子矩阵提供特征值。矩阵的第二个子矩阵提供相关联的特征向量。将其与链接进行比较,我们发现特征值相同,但关联的特征向量看起来不同:

虽然特征向量不同,但仔细观察我们发现唯一的区别是它们的长度而不是它们的方向。 MuPAD 在显示输出之前将特征向量归一化(将它们的长度等同于 1),而提供的链接将特征向量的最后一个分量设置为 1。虽然特征向量的长度不感兴趣,但它的方向是,因此,选择长度是偏好或约定的问题。