我正在使用 Scipy 进行 FEM 项目。现在我的问题是,稀疏矩阵的组装太慢了。我计算密集小矩阵中每个元素的贡献(每个元素一个)。对于全局矩阵的组装,我遍历所有小的密集矩阵并按以下方式设置矩阵条目:
[i,j] = someList[k][l]
Mglobal[i,j] = Mglobal[i,j] + Mlocal[k,l]
Mglobal
是一个适当大小的 lil_matrice,someList
映射索引变量。
当然,这是相当慢的,并且消耗了大部分矩阵组装时间。有没有更好的方法从许多小的密集矩阵组装一个大的稀疏矩阵?我试过 scipy.weave 但它似乎不适用于稀疏矩阵