DataArray.dot(other, dims=None)[source]#

Perform dot product of two DataArrays along their shared dims.

Equivalent to taking taking tensordot over all shared dims.

  • other (DataArray) – The other array with which the dot product is performed.

  • dims (..., str, Iterable of Hashable or None, optional) – Which dimensions to sum over. Ellipsis () sums over all dimensions. If not specified, then all the common dimensions are summed over.


result (DataArray) – Array resulting from the dot product over all shared dimensions.

See also

dot, numpy.tensordot


>>> da_vals = np.arange(6 * 5 * 4).reshape((6, 5, 4))
>>> da = xr.DataArray(da_vals, dims=["x", "y", "z"])
>>> dm_vals = np.arange(4)
>>> dm = xr.DataArray(dm_vals, dims=["z"])
>>> dm.dims
>>> da.dims
('x', 'y', 'z')
>>> dot_result = da.dot(dm)
>>> dot_result.dims
('x', 'y')