2013-06-26 95 views
0

我在Eigen lib中有2個向量的基本標量乘法有一些嚴重的問題。 當我有兩個向量......都是矩陣的行..所以...我必須秒.transpose();,我必須得到一個數字..所以我可以如何訪問它的結果這個向量在1迭代器中2,3,4,5 ... ?????? !!!!!2向量的標量乘法Eigen

q_c=matVk.row(ks); 
    lk=(matVk.row(i).transpose()); 

向量乘法:

 hore= q_c * lk; 

結果是完全不同的比必須.....和矢量值都ok ,,我檢查,,我想盡辦法解決這....我嘗試向量的更具體的init::相同的結果

VectorXd hore(1); 
VectorXd lk(k); 
VectorXd q_c(k); 
+0

我不認爲你問你的問題不夠清楚。當你說結果完全不同時,你會得到什麼?你能指望什麼? – doctorlove

+0

正確:向量的標量乘...我期待一個正確的結果:0.138 ..沒有0.00015 0.100015 0.000000000051等 –

回答

0

以下是文件中定義的typedefs: 的typedef矩陣< Double,1,Dynamic> RowVectorXd typedef Matrix < double,Dynamic,1> VectorXd

如果將列向量與列向量相乘,您將得到結果,因爲問題的細節不太清楚。但我想這是你犯的錯誤。試試這個:

VectorXd hore(1); 
VectorXd lk(k); 
RowVectorXd q_c(k); 
hore = q_c*lk 
+0

是的很多謝謝,我找不到這rowvec。在文檔thx。它woorks .. –