5h制作网站,wordpress 简体中文,电商资源网,北京一诺互联科技有限公司文章目录 1 特征值和特征向量2 对角化3 Schur定理和正规矩阵4 Python求解 1 特征值和特征向量 定义 设 σ \sigma σ为数域 F F F上线性空间 V V V上的一个线性变换#xff0c;一个非零向量 v ∈ V v\in V v∈V#xff0c;如果存在一个 λ ∈ F \lambda \in F λ∈F使得 σ (… 文章目录 1 特征值和特征向量2 对角化3 Schur定理和正规矩阵4 Python求解 1 特征值和特征向量 定义 设 σ \sigma σ为数域 F F F上线性空间 V V V上的一个线性变换一个非零向量 v ∈ V v\in V v∈V如果存在一个 λ ∈ F \lambda \in F λ∈F使得 σ ( v ) λ v \sigma(v)\lambda v σ(v)λv则 λ \lambda λ称为 σ \sigma σ的特征值。 σ \sigma σ的特征值的集合称为 σ \sigma σ的谱。并称 v v v为 σ \sigma σ的属于或对应于特征值$\lambda $的特征向量。 特征值和特征向量的求法 设 V V V是数域 F F F上的 n n n维线性空间 v 1 , ⋯ , v n v_1,\cdots,v_n v1,⋯,vn是 V V V的一组基线性变换 σ \sigma σ在这组基下的矩阵为 A A A如果 λ \lambda λ是 σ \sigma σ的特征值 α \alpha α是相应的特征向量。则 α ( v 1 , ⋯ , v n ) ( x 1 ⋮ x n ) \alpha(v_1,\cdots,v_n)\begin{pmatrix}x_1\\\vdots\\x_n\end{pmatrix} α(v1,⋯,vn) x1⋮xn 将上式代入 σ ( v ) λ v \sigma(v)\lambda v σ(v)λv得到 σ ( α ) ( v 1 , ⋯ , v n ) A ( x 1 ⋮ x n ) λ α λ ( v 1 , ⋯ , v n ) ( x 1 ⋮ x n ) \sigma(\alpha)(v_1,\cdots,v_n)A\begin{pmatrix}x_1\\\vdots\\x_n\end{pmatrix}\\ \lambda \alpha\lambda (v_1,\cdots,v_n)\begin{pmatrix}x_1\\\vdots\\x_n\end{pmatrix}\\ σ(α)(v1,⋯,vn)A x1⋮xn λαλ(v1,⋯,vn) x1⋮xn 由于 v 1 , ⋯ , v n v_1,\cdots,v_n v1,⋯,vn线性无关所以 A ( x 1 ⋮ x n ) λ ( x 1 ⋮ x n ) A\begin{pmatrix}x_1\\\vdots\\x_n\end{pmatrix}\lambda \begin{pmatrix}x_1\\\vdots\\x_n\end{pmatrix} A x1⋮xn λ x1⋮xn 则说明特征向量 α \alpha α的坐标 x ( x 1 ⋮ x n ) x\begin{pmatrix}x_1\\\vdots\\x_n\end{pmatrix} x x1⋮xn 满足齐次线性方程组 ( λ I − A ) x 0 (\lambda I-A)x0 (λI−A)x0。 因为 α ≠ 0 \alpha\neq 0 α0则 x ≠ 0 x\neq 0 x0即齐次线性方程组 ( λ I − A ) x 0 (\lambda I-A)x0 (λI−A)x0有非零解。有非零解的充要条件是它的系数矩阵它的系数矩阵行列式 ∣ λ I − A ∣ 0 |\lambda I-A|0 ∣λI−A∣0。 相关定义 设 A A A是数域 F F F上的 n n n阶矩阵 λ \lambda λ是一个符号也是未知的特征值矩阵 λ I − A \lambda I-A λI−A称为 A A A的特征矩阵其行列式 ∣ λ I − A ∣ |\lambda I-A| ∣λI−A∣称为 A A A的特征多项式。方程 ∣ λ I − A ∣ 0 |\lambda I-A|0 ∣λI−A∣0称为 A A A的特征方程它的根即 λ \lambda λ的值称为 A A A的特征根或特征值。以 A A A的特征值 λ \lambda λ代入 A x λ x Ax\lambda x Axλx中所得到的非零解 x x x称为 A A A对应于 λ \lambda λ的特征向量。 定理 设 A A A为 n × n n\times n n×n矩阵 λ \lambda λ是一个数值以下命题等价 λ \lambda λ是 A A A的特征值 ( λ I − A ) x 0 (\lambda I-A)x0 (λI−A)x0有一个非平凡的解即有非零向量的解 N ( λ I − A ) ≠ { 0 } N(\lambda I-A)\neq\{0\} N(λI−A){0} λ I − A \lambda I-A λI−A矩阵是奇异矩阵 det ( λ I − A ) 0 \det(\lambda I-A)0 det(λI−A)0 特征多项式的系数 如果 p ( λ ) det ( λ I − A ) λ n ∑ k 1 n ( − 1 ) k c k λ n − k λ n − c 1 λ n − 1 ⋯ ( − 1 ) n − 1 c n − 1 λ ( − 1 ) n c n p(\lambda)\det(\lambda I-A)\lambda^n\sum_{\\k1}^n(-1)^kc_k\lambda^{n-k}\\\lambda ^n-c_1\lambda^{n-1}\cdots(-1)^{n-1}c_{n-1}\lambda(-1)^nc_n p(λ)det(λI−A)λnk1∑n(−1)kckλn−kλn−c1λn−1⋯(−1)n−1cn−1λ(−1)ncn 则 c k ( 1 ≤ k ≤ n ) c_k(1\leq k\leq n) ck(1≤k≤n)是所有 k k k阶主子式选择 k k k行 k k k列形成的行列式的和特别的 c 1 t r ( A ) , c n det ( A ) c_1tr(A),c_n\det(A) c1tr(A),cndet(A)。 定理 设 A ∈ C n × n A\in C^{n\times n} A∈Cn×n如果 A A A有特征值 λ 1 , ⋯ , λ n \lambda_1,\cdots,\lambda_n λ1,⋯,λn则 t r ( A ) ∑ i 1 n λ i , det ( A ) ∏ i 1 n λ i tr(A)\sum_{\\i1}^n\lambda_i,\det(A)\prod_{i1}^n\lambda_i tr(A)i1∑nλi,det(A)i1∏nλi 如果 A A A相似 B B B则两个矩阵有相同的特征值和特征多项式。 设 A ∈ C m × n A\in C^{m\times n} A∈Cm×n则 A H A A^HA AHA和 A A H AA^H AAH特征值都是非负实数且它们都有相同的非零特征值和相同的重数并且非零特征值包含重数的数量等于KaTeX parse error: Undefined control sequence: \rank at position 1: \̲r̲a̲n̲k̲(A)。
2 对角化 定义 设矩阵 A ∈ F n × n A\in F^{n\times n} A∈Fn×n如果存在一个非奇异矩阵 P ∈ F n × n P\in F^{n\times n} P∈Fn×n和一个对角矩阵 D ∈ F n × n D\in F^{n\times n} D∈Fn×n使得 P − 1 A P D P^{-1}APD P−1APD则称 A A A可被对角化。 定理 A A A可以被对角化当且仅当 A A A有 n n n个线性无关的特征向量 λ 1 , ⋯ , λ k \lambda_1,\cdots,\lambda_k λ1,⋯,λk是 A A A的不同的特征值则对应的特征向量 x 1 , ⋯ , x k x_1,\cdots,x_k x1,⋯,xk它们是线性无关的由以上两条定理即可推出如果 A A A有 n n n个不同的特征值则 A A A可被对角化不同特征值对应的特征向量的集合的并集是线性无关的。即取每个特征值的所有特征向量无论这些向量属于哪个特征值它们的并集都是线性无关的。 代数重数 设 A ∈ F n × n A\in F^{n\times n} A∈Fn×n如果 det ( λ I − A ) ( λ − λ i ) r 1 ⋯ ( λ − λ k ) r k \det(\lambda I-A)(\lambda -\lambda_i)^{r_1}\cdots(\lambda-\lambda_k)^{r_k} det(λI−A)(λ−λi)r1⋯(λ−λk)rk其中 λ 1 , ⋯ , λ k \lambda_1,\cdots,\lambda_k λ1,⋯,λk是 A A A的特征值它们是不同的。则特征值 λ i \lambda_i λi的代数重数是 r i r_i ri即特征值 λ i \lambda_i λi出现的次数。 几何重数 与特征值 λ i \lambda_i λi对应的特征子空间是 N ( λ i I − A ) N(\lambda_i I-A) N(λiI−A)则特征值 λ i \lambda_i λi的几何重数为 dim ( N ( λ i I − A ) ) \dim(N(\lambda_i I-A)) dim(N(λiI−A))。 几何重数$\leq $代数重数 几何重数看可对角化 矩阵 A ∈ F n × n A\in F^{n\times n} A∈Fn×n可对角化当且仅当 A A A中不同特征值的几何重数和等于 n n n即每个特征值的代数重数都要等于几何重数
3 Schur定理和正规矩阵 酉正交相似定义 设 A ∈ C n × n ( R n × n ) A\in C^{n\times n}(R^{n\times n}) A∈Cn×n(Rn×n)如果存在一个酉正交矩阵 U U U使得 U H A U B ( U H U − 1 ) U^HAUB\space\space\space(U^HU^{-1}) UHAUB (UHU−1)则可称 A A A酉正交相似 B B B Schur定理 ∀ A ∈ C n × n \forall A\in C^{n\times n} ∀A∈Cn×n A A A都与上三角矩阵相似且存在酉矩阵 U U U和上三角矩阵 T T T使得 U H A U U − 1 A U T U^HAUU^{-1}AUT UHAUU−1AUT。 仅适用于复数域实数域上不一定适用 正规矩阵定义 设 A ∈ C n × n A\in C^{n\times n} A∈Cn×n如果 A A A满足 A H A A A H A^HAAA^H AHAAAH则称 A A A是正规矩阵。 Hermite矩阵酉正交矩阵都是正规矩阵 谱定理 设 A ∈ C n × n A\in C^{n\times n} A∈Cn×n如果 A A A是Hermite矩阵则 A A A酉相似于一个实对角矩阵换句话说Hermite矩阵的特征值都是实数。 引理 设 A ∈ C n × n A\in C^{n\times n} A∈Cn×n A A A是正规矩阵当且仅当 ∀ λ , x \forall \lambda,x ∀λ,x使得 ∣ ∣ A x − λ x ∣ ∣ ∣ ∣ A H x − λ ˉ x ∣ ∣ ||Ax-\lambda x||||A^Hx-\bar{\lambda}x|| ∣∣Ax−λx∣∣∣∣AHx−λˉx∣∣。 同时对角化 设 A , B A,B A,B都是相同阶数的正规矩阵则存在一个酉矩阵可以同时酉对角化 A , B A,B A,B当且仅当 A B B A ABBA ABBA
4 Python求解
import numpy as np
from sympy import symbols, Matrix
import pprint# 定义符号变量
lambda_ symbols(lambda)A np.array([[0, 2, 1], [-2, 0, 3], [-1, -3, 0]])
A Matrix(A)# 求特征矩阵
characteristic_matrix A - lambda_ * np.eye(3)
pprint.pprint(关于 lambda 的特征矩阵:)
pprint.pprint(characteristic_matrix)# 计算特征多项式
characteristic_polynomial A.charpoly(lambda_)
pprint.pprint(关于 lambda 的特征多项式:)
pprint.pprint(characteristic_polynomial)# 求特征值
eigenvalues A.eigenvals()
# 打印特征值、其代数重数、特征向量和几何重数for k, v in eigenvalues.items():pprint.pprint(特征值 %s 的代数重数为 %s % (k, v))pprint.pprint(特征值 %s 的几何重数为 %s % (k, A.eigenvects()[list(eigenvalues.keys()).index(k)][1]))pprint.pprint(特征值 %s 的特征向量为 %s % (k, A.eigenvects()[list(eigenvalues.keys()).index(k)][2]))# 判断A是否可对角化如果可以打印出对角化矩阵
if A.is_diagonalizable():pprint.pprint(A可对角化)pprint.pprint(对角化矩阵为:)pprint.pprint(A.diagonalize()[0])# 求A的行空间、列空间、零空间
pprint.pprint(A的行空间为:)
pprint.pprint(A.rowspace())
pprint.pprint(A的列空间为:)
pprint.pprint(A.columnspace())
pprint.pprint(A的零空间为:)
pprint.pprint(A.nullspace())