设数域 P P P上的向量空间 P n P^n Pn的线性变换 T T T,在某个基下其变换矩阵 A = ( α 1 , α 2 , ⋯ , α n ) \boldsymbol{A}=(\boldsymbol{\alpha}_1,\boldsymbol{\alpha}_2,\cdots,\boldsymbol{\alpha}_n) A=(α1,α2,⋯,αn)。 T T T的值域 T ( P n ) T(P^n) T(Pn)为 α 1 , α 2 , ⋯ , α 1 \boldsymbol{\alpha}_1,\boldsymbol{\alpha}_2,\cdots,\boldsymbol{\alpha}_1 α1,α2,⋯,α1的生成空间, T T T的核 K ( T ) K(T) K(T)为 A x = o \boldsymbol{Ax}=\boldsymbol{o} Ax=o的解空间。因此,只要构造出 T T T在 P n P^n Pn的某个基底下的矩阵 A \boldsymbol{A} A,利用博文《向量组的最大无关组计算》定义的maxIndepGrp函数,计算 α 1 , α 2 , ⋯ , α n \boldsymbol{\alpha}_1,\boldsymbol{\alpha}_2,\cdots,\boldsymbol{\alpha}_n α1,α2,⋯,αn的最大无关组,就是 T ( P n ) T(P^n) T(Pn)的基底。用博文《线性方程组的通解》定义的mySolve函数,计算 A x = o \boldsymbol{Ax}=\boldsymbol{o} Ax=o的基础解系,就是 K ( T ) K(T) K(T)的基底。
例1 用Python计算在ℝ 4 ^4 4的自然基上矩阵为 A = ( 1 0 2 1 − 1 2 1 3 1 2 5 5 2 − 2 1 − 2 ) ∈ \boldsymbol{A}=\begin{pmatrix}1&0&2&1\\-1&2&1&3\\1&2&5&5\\2&-2&1&-2\end{pmatrix}\in A=⎝⎜⎜⎛1−112022−22151135−2⎠⎟⎟⎞∈ℝ 2 × 2 ^{2\times2} 2×2的线性变换 T T T的值域 T ( T( T(ℝ 4 ) ^4) 4)与核 K ( T ) K(T) K(T)。
import numpy as np #导入numpy
from fractions import Fraction as F #导入Fraction
np.set_printoptions(formatter= #设置输出数据格式
{'all':lambda x:str(F(x).limit_denominator())})
A=np.array([[1,0,2,1], #设置矩阵A
[-1,2,1,3],
[1,2,5,5],
[2,-2,1,-2]],dtype='float')
r,ind,_=maxIndepGrp(A) #A的列向量最大无关组
print('值域基底:')
print(A[:,ind[:r]])
o=np.array([0,0,0,0]).reshape(4,1)
X=mySolve(A,o) #Ax=o的解集
print('核基底:')
print(X[:,1:])
程序的第5~8行设置线性变换矩阵A。第9行调用maxIndepGrp函数(见博文《向量组的最大无关组计算》)计算矩阵A中列向量的最大无关组,返回A的秩r和表示A中各列调整后的顺序ind,ind[0:r](或简略为ind[:r])为列向量的最大无关组下标。第11行输出A中列向量最大无关组作为值域的基底。第13行调用mySolve函数(见博文《线性方程组的通解》),计算齐次线性方程组 A x = o \boldsymbol{Ax}=\boldsymbol{o} Ax=o的解空间X。回忆X中第1列为零解,基础解系存于X[:,1:]中,第15行作为核的基底输出之。运行程序,输出
值域基底:
[[ 1 0]
[-1 2]
[ 1 2]
[ 2 -2]]
核基底:
[[ -2 -1]
[-3/2 -2]
[ 1 0]
[ 0 1]]
即 T ( T( T(ℝ 4 ) = { x ∣ x = λ 1 ( 1 − 1 1 2 ) + λ 2 ( 0 2 2 − 2 ) } , λ 1 , λ 2 ∈ ^4)=\{\boldsymbol{x}|\boldsymbol{x}=\lambda_1\begin{pmatrix}1\\-1\\1\\2\end{pmatrix}+\lambda_2\begin{pmatrix}0\\2\\2\\-2\end{pmatrix}\},\lambda_1,\lambda_2\in 4)={x∣x=λ1⎝⎜⎜⎛1−112⎠⎟⎟⎞+λ2⎝⎜⎜⎛022−2⎠⎟⎟⎞},λ1,λ2∈ℝ, K ( T ) = { x ∣ x = c 1 ( − 2 − 3 2 1 0 ) + c 2 ( − 1 − 2 0 1 ) } , c 1 , c 2 ∈ K(T)=\{\boldsymbol{x}|\boldsymbol{x}=c_1\begin{pmatrix}-2\\-\frac{3}{2}\\1\\0\end{pmatrix}+c_2\begin{pmatrix}-1\\-2\\0\\1\end{pmatrix}\},c_1,c_2\in K(T)={x∣x=c1⎝⎜⎜⎛−2−2310⎠⎟⎟⎞+c2⎝⎜⎜⎛−1−201⎠⎟⎟⎞},c1,c2∈ℝ。
写博不易,敬请支持:
如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!