使用LaMatGenDouble库计算(非对称,平方)lapack++矩阵的行列式的最佳(最快)方法是什么?
答案 0 :(得分:2)
计算行列式的一种方法是使用LU分解:
LaVectorLongInt pivots(A.cols());
LUFactorizeIP(A, pivots);
double detA = 1;
for (int i = 0; i < A.cols(); ++i)
detA *= A(i, i);
警告, A 会发生变化,因此建议您复制。
答案 1 :(得分:0)
我不知道lapack ++,但我确定没有标准的lapack,check。据我所知,lapack ++本身并没有实现matricial操作,而是使用其他操作,实际上你可以在其中几个之间切换(atlas,mkl(intel数学内核库)等等)。因此我的假设是在lapack ++中也有任何决定性操作。