标量乘以2个向量Eigen

时间:2013-06-26 15:49:23

标签: c++ vector eigen

我在Eigen lib中对2个向量的基本标量乘法有一些严重的问题。 当我有两个向量....两个都是矩阵的行...所以...我必须第二个.transpose();,我必须得到一个数字..所以我怎么可能访问这个结果向量在1迭代器2,3,4,5 ... ?????? !!!!!

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

向量乘法:

      hore= q_c * lk;

结果完全不同于必须.....并且向量中的值是好的,我检查了一下,我尝试了一切来解决这个问题....我尝试了更具体的初始化:向量:相同的结果

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

1 个答案:

答案 0 :(得分:0)

以下是文档中定义的typedefs:     typedef Matrix< double,1,Dynamic> RowVectorXd     typedef Matrix< double,Dynamic,1> VectorXd

如果将列向量乘以列向量,您将获得结果,因为问题详细信息不太清楚。但我猜这是你犯的错误。试试这个:

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