You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

特征多项式的根与矩阵特征值为何不一致?附矩阵B计算案例

特征多项式根与特征值的本质一致性

咱先把这个事儿掰扯明白:特征多项式的根和矩阵的特征值其实是完全相同的,只是两者的呈现形式不一样——一个是数值近似解,一个是符号解析解。

一步步拆解你的例子

1. 矩阵B的定义

先看你给出的目标矩阵:

B = [1 2 0 ; 2 4 6 ; 0 6 5]

2. eig(B)的数值特征值

用eig(B)得到的是浮点数形式的数值近似解,这是计算机通过数值算法直接算出的近似值,方便直接拿来用:

{-2.2240, 1.5109, 10.7131}

3. 特征多项式与符号解

通过syms x; polyB = charpoly(B,x)得到的是精确的符号特征多项式:

x^3 - 10*x^2 - 11*x + 36

而solve(polyB)给出的是这个三次方程的精确解析解——也就是用根式(甚至包含复数形式)表示的严格解,看起来复杂,但只要把这些解析解转换成数值形式,就会和eig(B)的结果完全匹配。

比如你可以跑一段代码验证:

syms x
polyB = x^3 - 10*x^2 - 11*x + 36;
roots_sym = solve(polyB);
double(roots_sym)

运行后得到的结果就是:

-2.2240
 1.5109
10.7131

和eig(B)的结果一模一样!

为啥看起来差这么多?

  • eig是专门针对矩阵特征值的数值计算工具,直接输出近似浮点数,适合工程计算里直接用。
  • solve是符号求解工具,它会尽可能给出方程的精确解析形式,对于三次方程这类非一次多项式,难免会出现带复数、嵌套根式的复杂表达式,但这些表达式的数值结果和特征值完全等价。

内容的提问来源于stack exchange,提问作者M a m a D

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:20:29