numpy.vdot#
- numpy.vdot(a, b, /)#
返回两个向量的点积。
vdot(a, b) 函数处理复数的方式与 dot(a, b) 不同。如果第一个参数是复数,则在计算点积时使用第一个参数的共轭复数。
请注意,
vdot
处理多维数组的方式与dot
不同:它不会执行矩阵乘积,而是首先将输入参数展平成一维向量。因此,它应该只用于向量。- 参数:
- a类数组
如果 a 是复数,则在计算点积之前取其共轭复数。
- b类数组
点积的第二个参数。
- 返回值:
- 输出ndarray
a 和 b 的点积。可以是 int、float 或 complex,具体取决于 a 和 b 的类型。
另请参阅
dot
返回点积,不使用第一个参数的共轭复数。
示例
>>> import numpy as np >>> 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