凸优化有关的数值线性代数知识四:分块消元与Schur补
作者:互联网
四、分块消元与Schur补
- 消除部分变量
- 逆矩阵引理
消除部分变量
考虑Ax=b,将变量分为凉快或两个子向量
对线性方程组Ax=b做同样的划分,
其中
假设可逆,则按以下方式消去,,再将其代入第二个方程
得到
其中是矩阵A的第一个分块矩阵的Schur补。当且仅当A非奇异时,Schur补S是非奇异矩阵。
通过分块消元求解线性方程组
给定非奇异线性方程组Ax=b,其中非奇异:
- 计算和
- 计算和
- 求解确定
- 求解确定
分块消元法的复杂度分析
f表示对进行因式分解的计算成本,s表示完成相应的求解步骤所需要的计算成本。
- 计算和,对进行因式分解,再加上求解两个乘法需要的次浮点运算,共需要
- 计算和,计算需要,再加上的矩阵减法,成本为,计算的成本不如计算S的成本阶次高,因此只需考虑计算S的成本。
- 求解确定,对该方程求解需要分解S,再求解,成本为。
- 求解确定,计算需要次浮点运算,求解方程组可以利用1中的的分解结果,因而秩序执行求解步骤,成本为s。
故总成本:
无结构矩阵消元:此时的分解为LU分解,于是,,代入上式得到
对角矩阵消元:f=0,,代入得到
逆矩阵引理
考虑线性方程组,引入新的变量,写成:
应用块消元,从第一个方程中得到,再将x代入第二个方程得到
因为b是任意向量,有以下结论
这就是逆矩阵定理。
求解(A+BC)x=b的计算成本:
如果A是对角元素不等于零的对角矩阵,B,C 是稠密矩阵,
(1)计算D=A+BC需要次浮点运算,再对D进行LU分解,需要次浮点运算,总成本
(2)用逆矩阵引理求解,即先计算,计算需要n次浮点运算,计算需要次浮点运算,再求y,需要次浮点运算,再计算,再求解x需要2pn次浮点运算。
来源:https://blog.csdn.net/wangchy29/article/details/87917717
标签:Schur,求解,浮点运算,分块,矩阵,计算,消元 来源: https://blog.csdn.net/hyl1181/article/details/111305821