Numpy linalg.matrix_rank() используется для вычисления мощности n квадратной матрицы. Это означает, что если у нас есть квадратная матрица M и целое число n, то эта функция используется для вычисления Mn?
Numpy linalg matrix_power()
Чтобы вычислить мощность матрицы m, используйте функцию Numpy linalg matrix_power(). Метод matrix_power() возводит квадратную матрицу в (integer) степень n.
Если значение n=0, то она вычисляет ту же матрицу, а если значение n<0, то эта функция сначала инвертирует матрицу, а затем вычисляет степень abs(n).
Синтаксис
|
1 |
numpy.linalg.matrix_power(M,n) |
Параметры
Функция matrix_power() принимает два параметра:
- М: Это квадратная матрица, над которой мы хотим работать.
- n: это значение мощности матрицы.
Возвращаемое значение
Метод возвращает целое число после вычисления мощности.

Примеры программирования
- Программа, когда значение N больше 0.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# Program when the value of N is greater than 0 from numpy import linalg as LA import numpy as np arr1 = np.array([[1, 2, 3], [3, 2, 4], [1, 0, 1]]) print("The array is:\n", arr1) # When n=2 print("Matrix Power is:\n", LA.matrix_power(arr1, 2)) arr2 = np.array([[1, 2], [2, 1]]) print("The array is:\n", arr2) # When n=1 print("Matrix Power is:\n", LA.matrix_power(arr2, 1)) |
Вывод:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
The array is: [[1 2 3] [3 2 4] [1 0 1]] Matrix Power is: [[10 6 14] [13 10 21] [ 2 2 4]] The array is: [[1 2] [2 1]] Matrix Power is: [[1 2] [2 1]] |
Объяснение.
В этом примере мы сначала импортировали numpy и linalg. Затем мы создали матрицу размером 3×3, а затем вычислили matrix_power, когда значение n равно 2.
После этого мы объявили еще одну матрицу размера 2×2 и вызвали matrix_power при n=1. Мы получили массив такой же формы после вызова функции, степени матрицы.
- Программа, где значение N равно или меньше 0.
См. следующий код.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# Program when the value of N is greater than 0 from numpy import linalg as LA import numpy as np arr1 = np.array([[1, 2, 3], [3, 2, 4], [1, 0, 1]]) print("The array is:\n", arr1) # When n=0 print("Matrix Power is:\n", LA.matrix_power(arr1, 0)) arr2 = np.array([[1, 2], [2, 1]]) print("The array is:\n", arr2) # When n=-2 print("Matrix Power is:\n", LA.matrix_power(arr2, -2)) |
Вывод:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
The array is: [[1 2 3] [3 2 4] [1 0 1]] Matrix Power is: [[1 0 0] [0 1 0] [0 0 1]] The array is: [[1 2] [2 1]] Matrix Power is: [[ 0.55555556 -0.44444444] [-0.44444444 0.55555556]] |
Объяснение.
В этом примере мы сначала импортировали numpy и linalg. Затем мы создали матрицу размером 3×3, а затем вычислили matrix_power, когда значение n равно 0.
В данном случае мы получили в результате матрицу, где только одна диагональ имеет значение 1, а остальные равны 0.
После этого мы объявили еще одну матрицу размером 2×2 и назвали matrix_power при n=-2.
В этом случае мы получили матрицу того же вида, что и данная матрица после вычисления степени n.
