2

我想问一个关于 alglib 的 rmatrixinverse() 的简单问题。我有一个名为 2D 双数组M (matrix n*n),我想得到一个名为 的逆矩阵invM。对于这种情况,我使用 rmatrixinverse(),但结果是错误的。我也尝试了一些来自 alglib 的其他逆矩阵求解器,但在我看来,rmatrixinverse()它最适合,因为数据充满了双精度数。

如果有人遇到过这个问题并且有任何想法,我将非常感激。

alglib::real_2d_array invMalglib;
alglib::ae_int_t info;
alglib::matinvreport rep;
invMalglib.setlength(matrix_degree,matrix_degree);
for(int i = 0; i < matrix_degree; i++)
    for(int j = 0; j < matrix_degree; j++)
        invMalglib[i][j] = M[i][j];

vector_from_matrix_and_vector(F, X, FtX, small_length, matrix_degree);
alglib::rmatrixinverse(invMalglib, info, rep);
for(int i = 0; i < matrix_degree; i++)
    for(int j = 0; j < matrix_degree; j++)
        invM[i][j] = invMalglib[i][j];
4

0 回答 0