📜  Python| sympy.eigenvals() 方法(1)

📅  最后修改于: 2023-12-03 15:34:17.201000             🧑  作者: Mango

Python | sympy.eigenvals() 方法

简介

sympy.eigenvals() 方法是Python SymPy库中的一个函数,用于计算给定矩阵的特征值。

特征值可以给出矩阵的重要信息,如行列式值和矩阵的迹。此外,特征值还在许多数学和工程问题中发挥作用。

语法

下面是 sympy.eigenvals() 方法的语法:

sympy.eigenvals(mat)

其中,mat是待计算特征值的矩阵。

参数

函数需要传递一个参数,即代表秩为n的方程组的n x n矩阵。

返回值

该函数会返回一个Python字典,其中特征值作为键,每个特征值的代数重复次数作为值。

示例

下面是sympy.eigenvals()方法的一个简单的例子:

from sympy import Matrix
from sympy import pprint
from sympy import eigenvals

A = Matrix([[1, 2], 
            [3, 4]])
pprint(A.eigenvals())

输出:

{5/2 - sqrt(33)/2: 1, 5/2 + sqrt(33)/2: 1}

在这个例子中,我们首先用Matrix()函数创建一个2 x 2的矩阵,然后使用eigenvals()函数计算该矩阵的特征值。

返回的字典有两个键,每个键表示矩阵的一个特征值。

注意事项

如果你输入的矩阵的元素是浮点数,那么可能会有误差。如果不想得到近似值,可以将矩阵元素转换为有理数。 如下所示:

from sympy import Rational

A = Matrix([[Rational(1, 3), Rational(1, 2)],
            [Rational(3, 4), Rational(2, 5)]])
pprint(A.eigenvals())

输出:

{13/20 - sqrt(409)/20: 1, 13/20 + sqrt(409)/20: 1}

这里我们使用Rational()函数将矩阵元素转换为有理数,结果正常输出。