Что такое произведение Кронекера? Предположим, у нас есть два списка: 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]
Что такое функция np.kron() в Python?
np.kron() в Python — это библиотечная функция numpy, которая используется для вычисления произведения Кронекера. Это составной массив, состоящий из блоков второго массива, масштабированных первым. Метод numpy kron() принимает в качестве аргументов два списка.
Чтобы вычислить произведение Кронекера в Python, используйте функцию np.kron(). Метод Numpy kron() используется для получения произведения Кронекера двух заданных списков.
Синтаксис
|
1 |
np.kron(list1, list2) |
Параметры
Функция kron() принимает два основных параметра:
- list1: первый список.
- list2: второй список, который мы хотим вычислить произведением Кронекера.
Возвращаемое значение
Функция kron() возвращает вектор размера ( shape|list1| * shape |list2| ), который содержит произведение Кронекера.
Примеры программ с методом np.kron()
Нахождение продукта Кронекера, когда два списка являются одномерными
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# Finding Kronecker product when two lists are 1D 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) |
Выход
|
1 2 3 4 5 6 7 |
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(), чтобы получить векторное произведение Кронекера.
Произведение Кронекера, если один из списков двумерный, а другой — одномерный
См. следующий код.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# Finding Kronecker product when two lists are 2D 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) |
Выход
|
1 2 3 4 5 6 7 8 9 10 11 |
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(), чтобы получить векторное произведение Кронекера.
