将eigen :: arrayxxd转换为eigen :: matrixxd

Convert Eigen::ArrayXXd to Eigen::MatrixXd

本文关键字:eigen matrixxd arrayxxd 转换      更新时间:2023-10-16

如何将ArrayXXd数组转换为MatrixXd?到目前为止,我已经完成了

MatrixXd temp_mat = my_array;

隐含的转换似乎可以正常工作,但是这是应该做的吗?还是我应该做一些明确的转换操作?

是的,隐式转换旨在在您执行时工作。

如果要将Array视为Matrix,而无需实际复制它,则可以使用.matrix()方法。例如,

ArrayXXd A;
VectorXd v;
VectorXd r = A.matrix() * v; // matrix vector product

这种方法是一种称为.array()的方法。

Array类教程的"数组和矩阵表达式之间的转换"部分中,更详细地描述了这一点。