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

Trả lại sự phân hủy Cholesky trong Đại số tuyến tính bằng Python

Để trả về phân rã Cholesky, hãy sử dụng phương thức numpy.linalg.cholesky (). Trả về phép phân hủy Cholesky, L * L.H, của ma trận vuông a, trong đó L là tam giác dưới và .H là toán tử chuyển vị liên hợp. A phải là Hermitian và xác định dương. Không có kiểm tra nào được thực hiện để xác minh xem a có phải là Hermitian hay không. Ngoài ra, chỉ các phần tử hình tam giác dưới và đường chéo của a mới được sử dụng. Chỉ có L là thực sự được trả lại.

Khi đó tham số a, là Hermitian (đối xứng nếu tất cả các phần tử là thực), ma trận đầu vào xác định dương. Phương thức trả về hệ số Cholesky trên hoặc tam giác dưới của a. Trả về một đối tượng ma trận nếu a là một đối tượng ma trận.

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

Tạo một mảng numpy 2D bằng phương thức numpy.array () -

arr = np.array([[1,-2j],[2j,5]])

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)

Để trả về phân tách Cholesky, hãy sử dụng phương thức numpy.linalg.cholesky () -

print("\nCholesky decomposition in Linear Algebra...\n",np.linalg.cholesky(arr))

Ví dụ

import numpy as np

# Creating a 2D numpy array using the numpy.array() method
arr = np.array([[1,-2j],[2j,5]])

# 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 return the Cholesky decomposition, use the numpy.linalg.cholesky() method.
print("\nCholesky decomposition in Linear Algebra...\n",np.linalg.cholesky(arr))

Đầu ra

Our Array...
[[ 1.+0.j -0.-2.j]
[ 0.+2.j 5.+0.j]]

Dimensions of our Array...
2

Datatype of our Array object...
complex128

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

Cholesky decomposition in Linear Algebra...
[[1.+0.j 0.+0.j]
[0.+2.j 1.+0.j]]