将eigen :: matrixXf映射到数组

时间:2013-01-13 12:10:24

标签: c++ eigen

在eigen中,我need将MatrixXf放置到现有数组中。 现在,这有效:

    MatrixXf Um=FFMatBas(xi,CalcMetod);
    Map<VectorXf>Uv(Um.data(),ppp);
    Map<VectorXf>(Q,ppp)=Uv; 

但似乎有点复杂(Q是长度为ppp的现有数组)。 我们可以一步完成最后两行吗?

2 个答案:

答案 0 :(得分:1)

MatrixXf Um=FFMatBas(xi,CalcMetod);
Map<VectorXf>(Q,ppp)=Map<VectorXf>Uv(Um.data(),ppp); 

答案 1 :(得分:1)

假设Q足够大以包含矩阵,您也可以将其写为:

MatrixXf Um = FFMatBas(xi,CalcMetod);
Map<MatrixXf>(Q, Um.rows(), Um.cols()) = Um;