點選檢視程式碼
import numpy as np
from sympy import Matrix, symbols
# 定義一個矩陣
A = np.array([[-1,1,0],[-4,3,0],[1,0,2]])
# 使用numpy.linalg.eig求解特徵值和特徵向量
eigenvalues, eigenvectors = np.linalg.eig(A)
print("數值解的特徵值:", eigenvalues)
print("數值解的特徵向量:\n", eigenvectors)
# 定義符號變數(雖然在這個例子中我們不需要顯式地定義它們,但SymPy內部會使用)
# x, y = symbols('x y') # 在這個例子中不需要
# 定義一個符號矩陣
A = Matrix([[4, 2], [1, 3]])
# 使用.eigenvects()方法求解特徵值和特徵向量(符號解)
eigenvects = A.eigenvects()
print("符號解的特徵值和特徵向量:")
for lambda_, multiplicity, vectors in eigenvects:
print(f"特徵值: {lambda_}, 多重性: {multiplicity}")
for vector in vectors:
print(f"特徵向量: {vector}")
print("學號:3015")