Registered Member
|
Hello,
as far as I use Eigen, I found out that it solves linear equatin systems Ax=B with the method of LU decomposition very fast, but decomposition itself is in my opinion quite slow. For sets of thousands of linear equations which had to be solved many times, with static A and changing B, using x=A.lu().solve(B) is obviously bad idea. Because of that I use Eigen::FullPivLu<Matrix> A_LU object and calculate LU decomposition only once. Anyways, this decomposition takes too much time for big systems and I think it'll be faster to calculate matrix A decomposition apart of Eigen, put it in a standard c++ matrix, eg: double temporary_lu_matrix[a][a] and put it to Eigen::FullPivLu A_LU matrix. Is there any method to fill Eigen::FullPivLu object with double values? Best regards, Filip |
Moderator
|
What about using PartialPivLU or HouseholderQR instead? Full pivoting LU is slow to compute, and using another tool for that won't help (e.g., LAPACK's full piv LU is as slow as Eigen).
|
Registered users: Bing [Bot], Evergrowing, Google [Bot], rockscient