稀疏矩阵求逆

计算科学 线性代数 线性求解器 稀疏矩阵
2021-12-01 17:55:03

我有阻抗矩阵,通过增强节点分析从电网制定。矩阵显示为图像以直观地说明其特征,其中所有白色块均为零。YY

在此处输入图像描述

形式的线性方程所需的求逆矩阵的最佳方法是什么?此外,在网络解决方案的每次迭代中,只有前个元素获得新值。所有其他元素保持原样。任何建议将不胜感激。Yx=b8×8

1个回答

对于这么小的矩阵,您可能不会比使用密集方法做得更好。

我用你的稀疏结构和随机生成的值用 C++ 为 18x18 矩阵编写了一个快速测试,并比较了稀疏分解(通过英特尔 MKLPARDISO)和通过英特尔 MKL 的DGETRF相同的密集分解。

  • 对于密集分解,任何内存分配都不包括在计时中。
  • 对于稀疏分解,如果我在时序中包含符号分解(PARDISO 中的第 1 阶段),其中包含大量内存分配,我发现密集分解比稀疏分解快10 倍至 20 倍。
  • 对于稀疏分解,如果我在时间中不包括符号分解,因为可以想象它可以在数值分解之前计算一次,我发现密集分解大约快1.5x-3x

当然,您的结果可能会因硬件、软件、月相等而有所不同,但希望这能让您了解自己所处的球场。