特征多项式法(characteristic polynomial )求特征值(结合lanczos和householder)(python,数值积分)

第三十四篇 特征多项式法求对称三对角矩阵的特征值

特征多项式

在之前的篇章中介绍过的,一个矩阵的特征值可以形成一个n阶多项式的根,称为“特征多项式”。线性方程的求解方法可以用来求这些根,详情可以翻看我之前写过的文章。但这并不是一个有效方法。还有一些更有效的方法是基于特征多项式的性质,当要求解特征值的矩阵是一个三对角矩阵时,使用这种性质可以很容易求出特征值。因此这种方法与前面描述的Householder法转换成三对角矩阵Lanczos法转换成三对角矩阵变换结合使用非常方便。

计算三对角矩阵的行列式值

在上一篇中,已经介绍过将矩阵转化为三对角等价的非迭代方法。得到n × n系统的特征值方程为
在这里插入图片描述
因此,这个问题就成了求行列式方程的根的问题
在这里插入图片描述
虽然我们不能直接找到这些根,但想一下上面方程左边行列式的计算
对于 n = 1
在这里插入图片描述
对于 n = 2
在这里插入图片描述
对于n = 3
在这里插入图片描述
可以看出一个递归关系,使det3(λ)可以简单地从det2(λ)和det1(λ)的值来评估。如果使det0(λ) = 1,一般的递归式可以写成下面这样。
在这里插入图片描述
因此,对于任何λ值,都可以很快计算λ,并且如果知道根λ = 0的范围,它的值可以通过二分法来计算。难点是把λ代入方程确保它是一个根。由于第二个方程的“主次方程”所具有的一个特殊性质,即“Sturm序列”性质,使得这个问题变得容易得多。

Sturm序列性质

对于n = 5,第二个方程左边的例子如下:
在这里插入图片描述
|a |的主余子式是虚线勾勒出的子矩阵的行列式,即消去[A]的第n行、(n−1)行得到。[A]的λ值和它的余子式的λ值在下面给出。
在这里插入图片描述
从上面的推导中得到,它们的根,也就是它们的特征值。从上表可以看出,[A]n, [A]n−1,[A]n−2等的每一个后续的特征值集合总是从前一个集合插值出来的,即[Ai−1]的特征值总是出现在[Ai]的特征值之间的间隙中。对于所有对称[A],这种分离性质被发现,称为“Sturm序列”性质。
它最有用的结论是,对于任何猜测的λ, i = 0,1,2,···,n时,deti(λ)符号变化的次数等于比λ值小[A]的的特征值数量。当计数符号变化时,应该设置det0(λ) = 1,并规定deti(λ) = 0不算作变化。
对于上面所示的具体例子,假设λ = 4,计算deti(4), i = 0,1,2,···,5,得出表格
在这里插入图片描述
从det0(4) = 1.0开始,沿表向下移动,我们看到5个符号变化,因此有5个特征值小于4。
现在让我们试试λ = 3.5。在本例中,表格是
在这里插入图片描述
在这里插入图片描述
我们只看到4个符号变化,因此有4个小于3。5的特征值。这两个结果表明,最大特征值在3.5 <λ< 4范围内。下表总结了λ值的选择结果。

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深渊潜航

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值