我发现Eigen的语法比我使用的其他数值线性代数库更麻烦:numpy,MATLAB和armadillo。所以我正在编写一堆“辅助”函数,扩展了Eigen的语法。 (见an earlier question of mine)
我的问题是,这不是已经完成了吗?
我知道libigl have added some MATLAB-esque function,但我想知道是否还有更多?
我试图不在这里重新发明轮子。
举一些例子:
swap_rows(i, j)
,swap_cols(i, j)
,reshape
,系数级函数,如abs
,log
等。
我正在尝试编写更易读的代码。
答案 0 :(得分:1)
Matlab和numpy没有表达式的概念,它们的函数总是在一个真实的矩阵上工作,无论是你自己创建的矩阵还是临时缓冲区。另一方面,Eigen使用模板表达式来避免临时内存缓冲区。它的功能应该适用于矩阵和表达式,这可能是为什么reshape
之类的函数没有实现的原因。 Eigen倾向于将需要临时缓冲区的函数留给用户,以便他们可以控制缓冲区出现的时间和位置。
系数功能已经存在。请在以下链接中找到更多详细信息。