Skip to content

方法Method

秩一谱更新的久期方程与消去

Rank-one secular equation · Diagonal plus rank-one eigenproblem · Secular equation deflation

把Hermitian秩一更新化为单调有理方程,先处理重极点和零分量,再用精确符号隔离全部新根并核对重数。

形式陈述 ​

已知 A=A∗∈Cn×n 的正交谱分解,要更新 B=A+ρvv∗,其中 ρ∈R。由谱定理写 A=QDQ∗、z=Q∗v,问题等价于求 D+ρzz∗ 的特征值。这里只讨论已取得并核验这份分解后的更新;求原分解的成本没有消失。

先设 D=diag(d1,…,dn),d1<⋯<dn,每个 zi≠0,且 ρ≠0。对 x∉{di},定义久期函数

f(x)=1+ρ∑i=1n|zi|2di−x.

更新后的谱恰为 f(x)=0 的 n 个实根。若 ρ>0,每个 (di,di+1) 内恰有一根,另有一根在 (dn,∞);若 ρ<0,每个内部间隔仍恰有一根,剩下一根在 (−∞,d1)。所有这些根简单。外侧根还分别满足

μn≤dn+ρ‖z‖22(ρ>0),μ1≥d1+ρ‖z‖22(ρ<0).

外侧端点允许取等,例如只剩一个活动方向时。ρ=0 或 z=0 则直接返回 D 的谱,不执行有理求根。

重极点必须先按特征空间合并 ​

若 D 有不同取值 δ1<⋯<δs,令 Ej 为值 δj 的坐标子空间,维数为 mj;令 z(j) 是 z 在 Ej 中的分量,aj=‖z(j)‖22。

  • aj>0 时,Ej∩(z(j))⊥ 的 mj−1 个方向完全不变,保留这么多份 δj;只留下单位方向 z(j)/aj 参加更新
  • aj=0 时,整个 Ej 不变,保留 mj 份 δj,该值不再是久期函数的极点

在剩下的 r=#{j:aj>0} 个方向中,矩阵成为

Dact+ρww∗,Dact=diag(δj:aj>0),w=(aj:aj>0)T.

它满足互异极点、非零分量的条件。求它的 r 个根,再与保留的 n−r 个值合并排序,才是完整答案。这种把已知不变方向移出求根问题的过程叫消去或 deflation。活动根可能等于某个已移除的 δj,届时重数必须相加;不能断言原来的零分量方向贡献了某值的全部重数。

直觉

更新 ρzz∗ 只读取一个数 z∗x,再沿 z 送回。如果某个旧特征空间中的向量与 z 正交,更新对它为零,它就可以原样保留。重根空间中只可能有一个方向被这一项触及。

剩下的方向相互耦合,但其全部新谱可由一条有理曲线找出。正更新时,曲线在每两个活动极点之间从负无穷严格升到正无穷,每段恰好穿过零一次。极点是禁止代入的位置,不是待接受的根;删掉的极点则已不再是禁止位置。

图中的绿色谱点来自不变方向,蓝色空心刻度表示活动极点,红色短区间才是求根所得的包围。它们承担不同角色,不能把同一横坐标上的标记简单去重。

例子与边界

四阶输入只需求两个新根 ​

取

D=diag(1,1,3,5),z=(1,1,0,1)T,ρ=1.

值 1 的二维空间中保留 (1,−1,0,0)T/2,活动方向是 (1,1,0,0)T/2;第三坐标因 z3=0 而保留特征值 3。在活动基中,剩余矩阵为

(1005)+(21)(21)=(3226).

于是

f(x)=1+21−x+15−x=x2−9x+16(1−x)(5−x).

两根是 α=(9−17)/2、β=(9+17)/2,完整升序谱为 (1,α,3,β)。无需信任小数,下面的有理符号已给出两个隔离区间:

f(12/5)=−4/91<0,f(5/2)=1/15>0,f(13/2)=−1/33<0,f(33/5)=1/56>0.

两段都不跨活动极点,且曲线严格递增,所以 α∈(12/5,5/2)、β∈(13/2,33/5)。由这些位置可安全合并成上述排序。最后核对维数为四、迹为 1+1+3+5+‖z‖2=13;保留值与活动根之和也为 1+3+9=13。

消去的旧值可以与一个新根重合 ​

换成 D=diag(0,1,3)、z=(1,0,1)T、ρ=2。中间方向保留 1,活动矩阵为 (2225),其特征多项式是 (x−1)(x−6)。所以完整谱是 (1,1,6)。活动函数 1+2/(0−x)+2/(3−x) 在 x=1 有定义且为零;把所有旧值都从候选根中排除会漏掉一份重数。

若同一特征空间中的某个坐标为零,却有其他坐标不为零,应按整个分量的平方范数合并,不能按打印出的单个坐标判断这个重根空间是否完全消去。换基会改变单个分量,而 aj 不变。

推论与应用

方程、根数与向量来自同一个恒等式 ​

对可逆 M,行列式的多重线性给

det⁡(M+uv∗)=det⁡(M)(1+v∗M−1u).

可以先提出 M,再展开 I+ab∗ 的各列:选取两个来自 ab∗ 的列就会线性相关,只有零列替换和单列替换贡献,分别为 1 和 ∑iaib―i。取 M=D−xI,即得 det⁡(D+ρzz∗−xI)=det⁡(D−xI)f(x),这里只在 x 避开极点时使用逆矩阵。

在互异且全部活动的情形,清分母后的特征多项式在 x=dj 的值为 ρ|zj|2∏i≠j(di−dj)≠0,所以没有遗漏藏在极点的根。又有

f′(x)=ρ∑i|zi|2(di−x)2.

正更新时导数为正,每个内部区间两端极限为 −∞,+∞;最后一段从 −∞ 升向 1。最左一段全为正,没有根。负更新时导数和单侧极限反向,外侧根换到最左。所有间隔都已找到一根,合计为矩阵阶数,完成无遗漏与简单性的证明。外侧有限界来自 ‖ρzz∗‖2=|ρ|‖z‖22 和有序扰动界。

若 μ 是活动根,对应向量可取 y=(Dact−μI)−1w,因为

(Dact+ρww∗−μI)y=w(1+ρw∗y)=0.

它非零,归一化后再通过活动基和 Q 回到原坐标。靠近极点时逆差值很大,浮点实现需要缩放并核验原矩阵残差与向量正交性,不能由这个精确公式自动推出算法稳定。

括根、求值误差与近似消去 ​

在每个无极点的区间中使用二分法,正更新时按 f(c)<0 保留右半段,按 f(c)>0 保留左半段;负更新时相反。遇到精确零就记录该根。宽度小于 2ε 时,中点的绝对位置误差至多 ε。二分负责缩短已有区间,本页的单调和极限负责证明每段只有一根。

用向外舍入区间算术计算 f(c) 时,只有整个结果区间为正或为负,才能作相应删除;若包含零,应提高精度、改选切点或保留当前区间。不能把含极点的区间交给连续二分,也不能把普通小数恰好打印成零当作精确根。

若为了数值消去而把 z 改成 z~,那已换成邻近矩阵。设 e=z−z~,则

zz∗−z~z~∗=ez~∗+z~e∗+ee∗,

故其二范数和 Frobenius 范数都不超过 2‖z~‖2‖e‖2+‖e‖22,再乘 |ρ| 才是本次删分量的扰动预算。合并仅仅接近的极点也要加上 D 的改动。只有被精确证明为零或相等的输入,才允许不记误差地消去。

证书基线的工作量与停止责任 ​

已给稠密 Q 时,计算 z=Q∗v 需 O(n2) 算术操作。若旧谱已排序,按相等值分组并计算各组平方范数需 O(n);否则先排序,比较成本为 O(nlog⁡n)。每组只需储存一个活动方向及其正交补的表示;若还要显式写出全部补基,必须另计这些基向量的形成和输出成本,不能把它混入线性扫描。

剩下 r 个活动极点时,一次 f(c) 求值要累加 r 项,成本为 O(r)。严格极限保证在每个活动间隔内能找到异号的有限端点,但极点本身不能求值;应从内部逐步靠近端点直到符号得到认证。外侧也须先用有限谱界找到包围,并检查有限端点是否恰为根。这段初始括根工作可能因根极接近极点而耗费额外精度和次数,不包含在下面的二分轮数中。

已有第 j 个可靠括区,宽度为 wj,要使中点误差至多 ε>0,再二分至多

Lj=max(0,⌈log2⁡wj2ε⌉)

轮。因此全部根的这一阶段需 O(r∑j=1r(1+Lj)) 算术操作。存储各根区间和活动数据为 O(n+r),不含原来的稠密 Q。有理运算的分子分母位数会增长,区间符号认证也可能提高精度;这些位成本不能当成固定字长常数。

只要谱区间已达到宽度要求,求谱任务即可结束。若另外要求特征向量,活动坐标公式对全部 r 个根需要 O(r2) 次求差和除法;返回原坐标、形成保留方向、检查单位长度与原矩阵残差还须另计。直接对每个新向量乘稠密 Q 或 B 各需 O(n2),全部 r 个新向量便可达到 O(n2r)。只给出根的小数或很小的久期残差,不能冒充已经完成了这些向量验收。

参考资料
  • Ren-Cang Li,Solving Secular Equations Stably and Efficiently,LAPACK Working Note 89,1993,§1、印刷页2–3:对角加秩一模型、活动极点与根区间。该文把系数写成 1/ρ;本页用 ρ 直接乘外积,符号约定已相应转换。本页的分块消去、碰撞例及有理证书均逐步推导。
  • LAPACK,DLAED4官方源码说明,Purpose:互异对角元、正更新、单位更新向量以及有理插值求根。本页二分是证书基线,不声称实现了该高效求解器。
  • LAPACK,DLAED2源码,Purpose及消去代码:近重值、小分量的数值消去。源码中的容差步骤与本文精确消去须区分,删去小量必须另计扰动。
关系图谱9 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系