问题描述
是否有一种简单快速的解决方案来计算 Eigen3 中两个 3x3 矩阵之间的 Frobenius 内积?
解决方法
我认为您正在寻找正常的矩阵乘法
Eigen::Matrix3d a;
Eigen::Matrix3d b;
Eigen::Matrix3d product = a * b;
,
如果您正在搜索 inner product of matrices,一个可能的(可能不是最佳的)解决方案可能是
#include <iostream>
#include "Eigen/Dense"
int main()
{
Eigen::Matrix3d A,B;
A << 1,2,3,4,5,6,7,8,9;
B << 10,11,12,13,14,15,16,17,18;
Eigen::Matrix3d C;
C = A.transpose()*B;
std::cout << C.trace() << std::endl;
return 0;
}