您好,我做了一些关于矩阵求逆(线性代数)的研究,想使用C++模板编程来实现算法。我发现有许多方法,如高斯-约旦消元或LU分解,并在c++ boost库中找到了函数LU_factorize。
我想知道是否有其他方法,从程序员或数学家的角度来看哪个更好(优缺点)?
如果没有其他更快的方法,在boost库中是否已经有一个(矩阵)求逆函数?因为我搜索了很多,没有找到。
您好,我做了一些关于矩阵求逆(线性代数)的研究,想使用C++模板编程来实现算法。我发现有许多方法,如高斯-约旦消元或LU分解,并在c++ boost库中找到了函数LU_factorize。
我想知道是否有其他方法,从程序员或数学家的角度来看哪个更好(优缺点)?
如果没有其他更快的方法,在boost库中是否已经有一个(矩阵)求逆函数?因为我搜索了很多,没有找到。
dgetrf
(分解)和dgetri
(计算逆)。大多数其他线性代数库具有大致等效的功能。你可能想要在LAPACK周围使用C++包装器。LAPACK是非常成熟的代码:经过充分测试,优化等。
其中一个这样的包装器是Intel Math Kernel Library。