MATLAB 矩阵排列与颜色映射功能详解
1. colmmd 函数
1.1 功能概述
colmmd 函数用于对稀疏矩阵进行列最小度排列。对于非对称矩阵 S,该函数返回一个列排列向量 p,使得 S(:,p) 的 LU 分解因子比 S 更稀疏。在求解非对称和对称不定稀疏线性系统时, \ 和 / 运算符会自动使用 colmmd 排列。
1.2 语法
p = colmmd(S)
1.3 算法原理
- 对称矩阵的最小度算法在 George 和 Liu 的论文中有描述。
- 对于非对称矩阵,MATLAB 的最小度算法类似于对
A'*A进行对称最小度排列,但实际上并不形成A'*A。 - 算法的每个阶段会选择
A'*A图中度数最小的顶点(即 A 中与其他列共有非零元素最少的列),消除该顶点,并通过添加填充(合并行)来更新图的其余部分。如果输入矩阵 S 的大小为 m×n,则经过 n 个阶段后,所有列都被消除,排列完成。为了加快进程,使用了一些启发式方法来同时执行多个阶段。
1.4 示例
以下是使用 Harwell - Boeing 集合中的 WEST0479 矩阵进行示例的代码:
load west0479
超级会员免费看
订阅专栏 解锁全文
12

被折叠的 条评论
为什么被折叠?



