Computer >> Máy Tính >  >> Lập trình >> Python

Nâng ma trận vuông lên lũy thừa n trong Đại số tuyến tính bằng Python

Để nâng ma trận vuông lên lũy thừa n trong Đại số tuyến tính, hãy sử dụng numpy.linalg.matrix_power () inPython Đối với số nguyên dương n, lũy thừa được tính bằng bình phương ma trận lặp lại và nhân ma trận. Nếu n ==0, ma trận nhận dạng có cùng hình dạng với M được trả về. Nếu n <0, nghịch đảo được tính toán và sau đó nâng lên abs (n).

Giá trị trả về có cùng hình dạng và kiểu với M; nếu số mũ là số dương hoặc số 0 thì kiểu của các phần tử giống như kiểu của M. Nếu số mũ là số âm thì các phần tử là dấu phẩy động. Tham số thứ nhất, a là ma trận được “cấp nguồn”. Tham số thứ 2, n là số mũ có thể là nhiều số nguyên hoặc số nguyên dài, dương, âm hoặc bằng không.

Các bước

Đầu tiên, hãy nhập các thư viện được yêu cầu -

import numpy as np
from numpy.linalg import matrix_power

Tạo mảng 2D, ma trận tương đương với đơn vị tưởng tượng -

arr = np.array([[0, 1], [-1, 0]])

Hiển thị mảng -

print("Our Array...\n",arr)

Kiểm tra các thứ nguyên -

print("\nDimensions of our Array...\n",arr.ndim)

Lấy Datatype -

print("\nDatatype of our Array object...\n",arr.dtype)

Lấy hình dạng -

print("\nShape of our Array object...\n",arr.shape)

Để nâng ma trận vuông lên lũy thừa n trong Đại số tuyến tính, hãy sử dụng numpy.linalg.matrix_power () inPython. Đối với số nguyên dương n, lũy thừa được tính bằng bình phương ma trận lặp lại và nhân ma trận. Nếu n ==0, ma trận nhận dạng có cùng hình dạng với M được trả về. Nếu n <0, nghịch đảo được tính toán và sau đó nâng lên abs (n) -

print("\nResult...\n",matrix_power(arr, 0))

Ví dụ

import numpy as np
from numpy.linalg import matrix_power

# Create a 2D array, matrix equivalent of the imaginary unit
arr = np.array([[0, 1], [-1, 0]])

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# Get the Shape
print("\nShape of our Array object...\n",arr.shape)

# To raise a square matrix to the power n in Linear Algebra, use the numpy.linalg.matrix_power() in Python
print("\nResult...\n",matrix_power(arr, 0))

Đầu ra

Our Array...
[[ 0 1]
[-1 0]]

Dimensions of our Array...
2

Datatype of our Array object...
int64

Shape of our Array object...
(2, 2)

Result...
[[1 0]
[0 1]]