如何计算特征库中稀疏矩阵的逆

kuj*_*mul 6 c++ matrix sparse-matrix eigen eigen3

我对C++中的Eigen库有疑问.实际上,我想计算稀疏矩阵的逆矩阵.当我在Eigen中使用Dense矩阵时,我可以使用.inverse()运算来计算密集矩阵的逆.但是在稀疏矩阵中,我无法在任何地方找到逆运算.有谁知道计算稀疏矩阵的逆?帮我.

Mat*_*asB 9

您无法直接执行此操作,但您始终可以使用其中一个稀疏解算器进行计算.我的想法是解决A*X=I,我是身份矩阵.如果有解,X将是你的逆矩阵. 本征文档有一个关于稀疏求解器以及如何使用它们的页面,但基本步骤如下:

SolverClassName<SparseMatrix<double> > solver;
solver.compute(A);
SparseMatrix<double> I(n,n);
I.setIdentity();
auto A_inv = solver.solve(I);
Run Code Online (Sandbox Code Playgroud)