2013-01-13 47 views
1

在eigen,我need將MatrixXf放置到現有的數組。 現在,這個工程:map eigen :: matrixXf到數組

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

但似乎有點令人費解(Q是一個長度爲PPP的現有陣列)。 我們可以一步完成最後兩行嗎?

回答

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

假設Q是大到足以容納矩陣,你也可以寫爲:

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

的感謝!這是一個很好的答案 – user189035