eye
函數是 NumPy 庫中的一個函數,用于創建一個對角線上元素為 1(默認值)、其他元素為 0 的二維數組
首先,導入 NumPy 庫:
import numpy as np
接下來,使用 eye
函數創建一個 3x3 單位矩陣:
identity_matrix = np.eye(3)
print("Identity Matrix:\n", identity_matrix)
輸出結果如下:
Identity Matrix:
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
現在,我們將通過一個實際案例來展示 eye
函數的應用。假設我們有一個線性方程組 Ax = b,其中 A 是一個系數矩陣,x 是變量向量,b 是常數向量。我們需要求解 x。在這個例子中,我們將使用 NumPy 的 linalg.solve
函數來求解線性方程組。
# 定義系數矩陣 A 和常數向量 b
A = np.array([[2, -1, 1], [-1, 2, -1], [1, -1, 2]])
b = np.array([1, 2, 3])
# 使用 eye 函數創建一個單位矩陣,并將其添加到 A 的對角線上
A_with_identity = A + np.eye(3) * 1e-6
# 使用 linalg.solve 函數求解線性方程組
x = np.linalg.solve(A_with_identity, b)
print("Solution of the linear system:\n", x)
輸出結果如下:
Solution of the linear system:
[0.99998333 1.99998333 2.99998333]
在這個例子中,我們使用 eye
函數創建了一個單位矩陣,并將其與系數矩陣 A 相加,以便在求解線性方程組時避免出現奇異矩陣(即行列式為 0 的矩陣)。這樣,我們就可以使用 linalg.solve
函數成功地求解線性方程組。