numpy.vdot — NumPy v2.6.dev0 Manual

numpy.vdot(a, b, /)

#

Return the dot product of two vectors.

The

vdot

function handles complex numbers differently than

dot

: if the first argument is complex, it is replaced by its complex conjugate in the dot product calculation.

vdot

also handles multidimensional arrays differently than

dot

: it does not perform a matrix product, but flattens the arguments to 1-D arrays before taking a vector dot product.

Consequently, when the arguments are 2-D arrays of the same shape, this function effectively returns their

Frobenius inner product

(also known as the trace inner product or the standard inner product on a vector space of matrices).

Parameters:aarray_likeIf a is complex the complex conjugate is taken before calculation of the dot product.

barray_likeSecond argument to the dot product.

Returns:outputndarrayDot product of a and b. Can be an int, float, or complex depending on the types of a and b.

See also

dot

Return the dot product without using the complex conjugate of the first argument.

Examples

>>> importnumpyasnp>>> 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)Note that higher-dimensional arrays are flattened!

>>> 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*230