点积作为犰狳的乘法
Dot product as multiplication in armadillo
我有一个行向量和一个列向量,我想取它们的点积。
rowvec v = {1,2,3,4};
vec w = {5,6,7,8};
double a = dot(v,w) // works
double b = v*w // doesn't work
double c = (v*w)(0) // doesn't work
double d = static_cast<vec>(v*w)(0) //works
有没有可能得到看起来像 b
的东西?我想要它的可读性。
您也可以使用
double b = as_scalar(v*w);
但这并不是你真正想要的......
不要认为除了对 v、w 和 b 使用 mat 格式外,还有其他可用的替代方法。然后你会得到 v*w
的 [1x1] 矩阵和 w*v
的 [4x4] 矩阵
我有一个行向量和一个列向量,我想取它们的点积。
rowvec v = {1,2,3,4};
vec w = {5,6,7,8};
double a = dot(v,w) // works
double b = v*w // doesn't work
double c = (v*w)(0) // doesn't work
double d = static_cast<vec>(v*w)(0) //works
有没有可能得到看起来像 b
的东西?我想要它的可读性。
您也可以使用
double b = as_scalar(v*w);
但这并不是你真正想要的......
不要认为除了对 v、w 和 b 使用 mat 格式外,还有其他可用的替代方法。然后你会得到 v*w
的 [1x1] 矩阵和 w*v