给定一个 SPD 三对角线性系统,我们可以预先计算以使任何三个索引都可以在 O(1) 时间内链接起来吗?

计算科学 线性代数 泊松
2021-12-18 02:56:56

考虑一个对称正定三对角线性系统 其中给定三个索引,如果我们假设只有严格在之间的方程行成立,我们可以消除中间变量以获得形式为 该方程将的值与相关联,而与“外部”影响无关(例如,如果引入了影响的约束)。

Ax=b
ARn×nbRn0i<j<k<nik
uxi+vxj+wxk=c
v>0xjxi,xkx0

问题:是否可以在时间内预处理线性系统 ,以便可以在的链接方程Ax=bO(n)(i,j,k)O(1)

如果的对角线为 2,非对角线为,则所需结果是离散泊松方程的解析结果。不幸的是,在不破坏三对角结构的情况下,不可能将一般的 SPD 三对角系统转换为常系数泊松方程,这主要是因为不同的变量可以有不同的“筛选”级别(局部严格的正定性)。例如,进行简单的对角线缩放自由度的一半,但不能消除另一半。A1b=0x2n1A

直观地说,这个问题的解决方案需要安排问题,以便筛选量可以累积到线性大小的数组中,然后以某种方式“取消”以得出给定三元组的链接方程。

更新(更直观):就 PDE 而言,我有一个一维离散线性椭圆问题,我想知道我是否可以在预计算中花费来产生某种可以查找的“分析”解决方案在时间内,我可以改变边界条件的位置。O(n)O(1)

3个回答

这是一个有点不稳定的解决方案,仅当变量之间的耦合始终是非退化的时才有效。为简单起见,假设首先,为预先计算链接方程,例如b=0n(0,i,n1)0i<n

xi=aix0+bixn1

现在,给定,我们可以结合第个和第个链接方程并消除得到i<jijxn1

bjxi=aibjx0+bibjxn1bixj=ajbix0+bibjxn1bjxibixj=(aibjajbi)x0xi=aibjajbibjx0+bibjxj

可以再次重复此过程以消除给定不幸的是,我们在附近失去稳定性,或者一般来说,如果三对角系统解耦成独立的块。如果这没问题,但我担心微小但正值的故障。x0(i,j,k)bj=0bj=0

我想知道您是否可以对 A 的循环归约分解(我相信它仍然是 O(n) 大小)做一些有用的事情,重用在分解 A 的连续主子矩阵时保持不变的尽可能多的块。我怀疑它给你O(1),但也许O(log n)......

这里再尝试一下,比对消法稳定,但还是不太好。

如果A是一个 SPD 三对角矩阵,Meurant [1] 为B=A1

Bij=bi+1bjdj+1dnδiδn

在哪里ij,bi是负的非对角项和di,δi来源于ULLU因式分解A. 链接公式为i<j<k有形式

xj=(BjiBki)T(BiiBikBkiBkk)1(xixk)

不幸的是,这个公式仍然不稳定。直觉上,如果ik合理地接近三角洲源i类似于一个在k, 和倒置的2×2矩阵接近奇异。

[1]:Gerard Meurant (1992),“对称对角矩阵和块三对角矩阵的逆矩阵的评论”。