numpy.vdot #

麻木的。vdot ( a , b , / ) #

返回两个向量的点积。

vdot( a , b ) 函数处理复数的方式与 dot( a , b ) 不同。如果第一个参数是复数,则使用第一个参数的复共轭来计算点积。

请注意,vdot处理多维数组的方式与 不同dot:它执行矩阵乘积,而是首先将输入参数展平为一维向量。因此,它只能用于向量。

参数
类似数组

如果a是复数,则在计算点积之前取复共轭。

b类数组

点积的第二个参数。

返回
输出数组

ab的点积。可以是 int、float 或complex,具体取决于ab的类型。

也可以看看

dot

返回点积,而不使用第一个参数的复共轭。

例子

>>> a = np.array([1+2j,3+4j])
>>> b = np.array([5+6j,7+8j])
>>> np.vdot(a, b)
(70-8j)
>>> np.vdot(b, a)
(70+8j)

请注意,高维数组会被展平!

>>> a = np.array([[1, 4], [5, 6]])
>>> b = np.array([[4, 1], [2, 2]])
>>> np.vdot(a, b)
30
>>> np.vdot(b, a)
30
>>> 1*4 + 4*1 + 5*2 + 6*2
30