我想将两个向量相乘a ^ T =(1,2,3)和b =(4,5,6)。用笔和铅笔,我得到了

c = 1*4 + 2*5 + 3*6 = 4 + 10 + 18 = 32


使用Apache Commons Math3我可以

ArrayRealVector a = new ArrayRealVector(new double []{1, 2, 3});
ArrayRealVector b = new ArrayRealVector(new double []{4, 5, 6});


得到向量的表示。为了得到结果,我想做类似的事情

double c = a.transpose().multiply(b);


但是我找不到合适的方法(无论是转置还是乘法)。

最佳答案

这是点积,您可以使用double c = a.dotProduct(b);

07-24 09:45