Appearance
03 Cholesky、LDL* 与矩阵结构
1. 正定矩阵可以“开平方”
若
这就是 Cholesky 分解。其计算量约为
递推公式来自逐项比较
根号中的量应为正;若在远大于舍入误差的尺度上变成非正,说明矩阵并非正定或数据存在严重问题。
2. LDL* 分解
把 Cholesky 的对角缩放单独抽出,可写
其中
这既保持对称结构,又避免对负数开平方。
3. 带状矩阵
若
结构优势不是抽象常数:当
4. 稀疏矩阵与填充
稀疏分解中,原来的零元素可能在消元时变成非零,称为填充。数值选主元关心稳定性;稀疏排序还要控制填充。二者目标不同,实际软件往往先做重排序,再做带选主元的数值分解。
稀疏 Cholesky 的图解释:消去一个变量会让其相邻节点形成团。好的消元顺序试图减小这种新连接。
5. Cholesky QR 的代价
对满列秩
数学上得到 QR 分解,但形成
因此 Cholesky QR 很快,却可能在病态问题上严重丧失正交性。它适合条件良好的高性能场景,不是 Householder QR 的无条件替代品。
6. 选择指南
| 矩阵类型 | 首选分解 | 备注 |
|---|---|---|
| 一般方阵 | 部分选主元 LU | 通用可靠 |
| Hermite 正定 | Cholesky | 更快、存储更少 |
| Hermite 不定 | 带对称选主元的 | 保持对称结构 |
| 带状/稀疏正定 | 结构化稀疏 Cholesky | 先考虑排序与填充 |
7. 存在性为何与正定性等价
把
正定性给出
仍然正定。递归地对
这个证明也解释了算法中的开方量为什么理论上为正:它正是连续 Schur 补的首个主元。
8. 数值稳定性与失败诊断
标准 Cholesky 对正定矩阵是后向稳定的,计算结果满足
若开方量略小于零,可能是舍入误差;若明显为负,则矩阵不是正定、输入未严格对称,或条件极差。不要简单取绝对值继续计算,那会掩盖模型错误。合理做法是先检查对称性和最小特征值尺度,或改用带主元的
9. 从非分块到分块 Cholesky
分块写成
先求
最后更新
最后一步是对称秩-
10. 对称重排序与稀疏填充
对稀疏正定矩阵应使用同一个置换同时重排行和列:
常见策略包括近似最小度排序和嵌套剖分。它们不改变方程本身,只改变消元图,从而显著影响填充量、并行度和内存峰值。对于 PDE 网格,嵌套剖分利用几何或图分隔器把远离的子域分开处理。
11. 自检
- [ ] 能说明 Cholesky 为何比 LU 少一半主项运算量。
- [ ] 知道不定矩阵为什么需要
主元块。 - [ ] 能用带宽估算存储和运算量。
- [ ] 能解释 Cholesky QR 为什么会平方条件数。
- [ ] 能用 Schur 补证明 Cholesky 存在性。
- [ ] 知道分块 Cholesky 的主要矩阵更新是什么。
下一章:正交变换与 QR 分解。