Spec-Zone.ru › NumPy 2.0

numpy.vecdot

numpy.vecdot(x1, x2, /, out=None, *, casting='same_kind', order='K', dtype=None, subok=True[, signature, axes, axis])=<ufunc 'vecdot'>

Векторное скалярное произведение двух массивов.

Пусть \(\mathbf{a}\) — вектор в x1 и \(\mathbf{b}\) — соответствующий вектор в x2. Скалярное произведение определяется как:

\[\mathbf{a} \cdot \mathbf{b} = \sum_{i=0}^{n-1} \overline{a_i}b_i\]

где сумма по последнему измерению (если не указано axis) и где \(\overline{a_i}\) обозначает комплексно сопряжённое значение, если \(a_i\) комплексное, в противном случае — тождество.

Параметры:
x1, x2array_like

Вводные массивы, скаляры запрещены.

outndarray, необязательно

Расположение, в котором сохраняется результат. Если задано, оно должно иметь форму, соответствующую форме массива, полученного после удаления последнего измерения из x1 и x2. Если не задано или None, используется выделенный массив.

**kwargs

Для других аргументов только ключевых слов см. документацию по ufunc.

Возвращает:
yndarray

Векторное скалярное произведение входных данных. Это скалярное значение только тогда, когда x1 и x2 являются одномерными векторами.

Возбуждает:
ValueError

Если последнее измерение x1 не имеет того же размера, что и последнее измерение x2.

Если передано скалярное значение.

См. также

vdot

то же самое, но сначала сжимает аргументы

einsum

Конвенция Эйнштейна для суммирования.

Примеры

Получение проецируемого размера вдоль заданной нормали для массива векторов.

>>> v = np.array([[0., 5., 0.], [0., 0., 10.], [0., 6., 8.]])
>>> n = np.array([0., 0.6, 0.8])
>>> np.vecdot(v, n)
array([ 3.,  8., 10.])

Добавлен в версии 2.0.0.

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.vecdot.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API