我有一个大的稀疏矩阵 A,我想选择它的子矩阵来进行块 jacobi 迭代。
对于块,我得到了一个矩阵 Q,其中包含其第 J 列中非零条目的索引,定义了第 J 个块的节点。
我的代码是:
for i=1:J
lg=find(Q(level).agg(:,i));
D(i).matrix=inv((sparse(A(lg,lg))));
end
D_inverse=sparse(blkdiag(D(1:J).matrix));
我发现操作 A(lg,lg) 花费很多时间,因为 A 是稀疏格式,
有没有其他方法可以快速有效地实现这个目的(构建 D_inverse)?
谢谢