C ++ Eigen Library:将向量与行向量中的元素相乘

问题描述 投票:0回答:1

我试图获得一个矩阵,该矩阵由向量和行向量中的相应元素之间的乘积组成,如下所示:

Eigen::Vector3f vec;
vec << 1,
       2,
       3;

Eigen::RowVectorXf val;
val.setLinSpaced(5, 1, 5); //val = [1,2,3,4,5]

//result should be
//1,2,3,4,5
//2,4,6,8,10
//3,6,9,12,15

看到this question后,我试过了

val.array().colwise()*vec.array()

vec.array().rowwise()*val.array()

但他们只是不工作。

val是1xn向量。

c++ matrix eigen matrix-multiplication
1个回答
0
投票

您需要标准矩阵产品:

MatrixXf res = vec * val;
© www.soinside.com 2019 - 2024. All rights reserved.