Функция numpy.dot() в Python: скалярное произведение векторов

Чтобы вычислить скалярное произведение двух матриц, используйте функцию np.dot(). Давайте подробно рассмотрим эту функцию.

Что такое функция np.dot() в Python?

numpy.dot() в Python — это математическая функция, которая используется для возврата математической точки двух заданных векторов(списков). Функция np.dot() принимает три аргумента и возвращает скалярное произведение двух заданных векторов в Python. Векторы могут быть как одномерными, так и многомерными. В обоих случаях это следует правилу математического скалярного произведения.

Для одномерных массивов это внутренний продукт векторов. Для N-мерных массивов это сумма произведений последней оси a и предпоследней оси b.

Синтаксис

Параметры

Функция dot() принимает в основном три параметра:

  1. vector_a: это первый вектор.
  2. vector_b: второй вектор.
  3. out. Должен иметь тот же вид, который был бы возвращен, если бы он не использовался. В частности, он должен иметь соответствующую форму, должен быть C-непрерывным, а его dtype должен быть формой, возвращаемой для точки(a, b). Поэтому, если эти условия не выполняются, вместо того, чтобы пытаться быть гибким, делается исключение.

Возвращаемое значение

Метод numpy.dot() возвращает скалярное произведение двух заданных векторов. Если какой-либо из векторов или оба вектора являются комплексными, то для вычисления скалярного произведения используется его комплексно-сопряженный вектор.

Примеры использования метода numpy.dot()

Пример 1

Вычислите точку, когда заданные векторы одномерны.

См. следующий код.

Выход

Объяснение.

В этой программе в первом случае мы инициализировали два одномерных массива, а затем распечатали как массивы, так и их форму. После этого мы вызвали numpy.dot() для вычисления скалярного произведения массивов.

Мы видим, что получили ответ 40. По правилу скалярного произведения:

(1*2+2*3+3*4+4*5) = 40.

Также во втором случае мы объявили два комплексных уравнения. Затем мы напечатали их скалярные произведения. Мы видим, что ответ равен (21+22j), который был рассчитан следующим образом:

6*(4+3к) + 1д*(4-3к)

= 24+18j+4j-3

= 21+22j

Пример 2

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

См. следующий код.

Выход

Объяснение

В этой программе в первом случае мы инициализировали два 2D-массива, а затем распечатали как массивы, так и их форму. После этого мы вызвали numpy.dot() для вычисления скалярного произведения массивов. Мы видим, что ответ находится в двумерном массиве.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python