以稀疏矩阵为输入求解欠定方程组

计算科学 线性代数 matlab 稀疏矩阵
2021-12-13 12:29:15

我正在使用 Matlab 来解决 Ax=b 并且我的 A 非常大、稀疏、二进制和矩形。我看到了 Matlab backlash \ operator help,它指出如果 A 是矩形,那么它将使用 QR 求解器来求解它。我想知道这是否是正确的方法,因为 QR 对于大型稀疏矩阵效率不高。如果这是真的,那么你会推荐什么方法来解决我的方程组?

1个回答

这取决于稀疏模式。首先,您是否将矩阵定义为稀疏矩阵,因为与稀疏填充的密集矩阵相比,Matlab 有一套不同的操作适用于稀疏矩阵。根据您的问题,您还可以使用迭代方法,这些方法对稀疏矩阵也有不同的实现。根据您的稀疏模式,如果您使用直接求解器,您还可以指定更智能的预排序以提高填充效率。