M-N 矩阵的特征行乘以元素方式的 N-M 矩阵的列

Eigen row of a M-N matrix multiply column of a N-M matrix in element wise

我有一个矩阵

A = a11  a12  a13 
    a21  a22  a23

和另一个矩阵

B = b11  b12 
    b21  b22 
    b31  b32

如何使用 Eigen 获得以下向量?

a11 * b11 + a12 * b21 + a13 * b31
a21 * b12 + a22 * b22 + a23 * b32

你想要按系数乘法,所以你必须使用数组;由于维度的原因,您还需要转置,最后由于您想要形状 (Mx1) 的结果,因此您需要按行求和。所以这给你以下内容:

auto A = Eigen::Matrix<float, 2, 3>::Random().eval();
auto B = Eigen::Matrix<float, 3, 2>::Random().eval();

Eigen::Matrix<float, 2, 1> C = (A.array()*B.transpose().array()).rowwise().sum();