Numpy Kron: Как использовать функцию np.kron()
Метод numpy.kron()
используется для получения произведения Кронекера двух заданных списков. Но подождите, что такое произведение Кронекера? Предположим, у нас есть два списка: A [a0, a1, a2] и B [b0, b1, b2]. Если мы хотим вычислить произведение Кронекера этих двух списков, ответ будет следующим:
[a0 * b1, a1 * b0, a2 * b0, a0 * b1, a1 * b1, a2 * b1, a0 * b2, a1 * b2, a2 * b2]
Numpy kron()
Чтобы вычислить произведение Кронекера в Python, используйте функцию np.kron()
. Функция kron()
вычисляет произведение Кронекера, составной массив, состоящий из блоков второго массива, масштабированных первым.
Синтаксис
np.kron(list1, list2)
Параметры
Функция kron()
принимает два основных параметра:
- list1: это первый список.
- list2: Это второй список, с помощью которого мы хотим вычислить произведение Кронекера.
Возвращаемое значение
Функция kron()
возвращает вектор размера (shape|list1| * shape |list2|), который содержит произведение Кронекера.
Пример программирования
Нахождение произведения Кронекера, когда два списка являются одномерными
import numpy as np
# Declaring the first array
arr1 = np.array([-2, -1, 0, 1, 2, 3])
arr2 = np.array([0, 1, 2, 3, 4, 5])
print("First array is :\n", arr1)
print("Second array is :\n", arr2)
# Calculating the Kronecker product
ans = np.kron(arr1, arr2)
print("Kronecker product of these arrays are:\n", ans)
Результат
First array is :
[-2 -1 0 1 2 3]
Second array is :
[0 1 2 3 4 5]
Kronecker product of these arrays are:
[ 0 -2 -4 -6 -8 -10 0 -1 -2 -3 -4 -5 0 0 0 0 0 0
0 1 2 3 4 5 0 2 4 6 8 10 0 3 6 9 12 15]
Объяснение
Сначала мы создали два одномерных массива. Затем мы распечатали эти два массива. Затем мы вызвали numpy.kron()
, чтобы получить векторное произведение Кронекера.
Нахождение произведения Кронекера, когда один из списков является двухмерным, а другой - одномерным.
См. cледующий код:
import numpy as np
# Declaring the first array
arr1 = np.array([[-2, -1, 0], [1, 2, 3]])
arr2 = np.array([[0, 1, 2], [3, 4, 5]])
print("First array is :\n", arr1)
print("Second array is :\n", arr2)
# Calculating the Kronecker product
ans = np.kron(arr1, arr2)
print("Kronecker product of these arrays are:\n", ans)
Результат
First array is :
[[-2 -1 0]
[ 1 2 3]]
Second array is :
[[0 1 2]
[3 4 5]]
Kronecker product of these arrays are:
[[ 0 -2 -4 0 -1 -2 0 0 0]
[ -6 -8 -10 -3 -4 -5 0 0 0]
[ 0 1 2 0 2 4 0 3 6]
[ 3 4 5 6 8 10 9 12 15]]
Объяснение
Сначала мы создали два двумерных массива. Затем мы распечатали эти два массива. Затем мы вызвали numpy.kron()
, чтобы получить векторное произведение Кронекера.