Change of Basis 基变换

Change of Basis 基变换,就是利用线性变换,把一个向量从一套基的表达方式,转换成另一套基的表达方式。

概念:基矩阵

任何一个向量都可以看作是单位向量的组合,也就是说在 Standard Basis 标准基 组成的线性空间中,任何一个向量都可以看作是标准基的线性组合。如果采用一个新基,那么这个新基也可以用标准基来表示,也就是说 新基 {b1,,bn}\{\mathbf b_1,\ldots,\mathbf b_n\} 集合中,中任意一个 基向量 bib_i ,可以通过 标准基的线性变换 得到, 定义这个变换的过程为 PP :

P=[b1b2bn]P=\begin{bmatrix}\mathbf b_1&\mathbf b_2&\cdots&\mathbf b_n\end{bmatrix}

因为根据矩阵乘法的列提取法则:

Pei=(取 P 的第 i 列)=biP⋅e_i=(取 P 的第 i 列)=b_i

我们称 P 为基矩阵。此矩阵描述的就是输入单位向量转化成新基向量的过程。

假设在一个线性空间中有一个向量 vv , 它在旧基下坐标是 yy,在新基下坐标是 xx。因为新旧基都能表示同一个向量 vv

v=(旧基)y=(新基)xv =(旧基)⋅ y =(新基)⋅x

因为旧基是标准基,矩阵形式就是单位矩阵 II ,所以:

Iy=PxI · y = P · x

即:

y=Pxy = P · x

也就是说,新基下的坐标 通过 PP 基矩阵的变换可以得到 旧基下的坐标。

运算:从新基坐标换回旧基坐标

基变换的核心公式就是 [v]E=P[v]B[\mathbf v]_E=P[\mathbf v]_B

例如,旧基 EE 是标准基,新基为:

b1=(11),b2=(11),P=[1111]\mathbf b_1=\begin{pmatrix}1\\1\end{pmatrix},\qquad \mathbf b_2=\begin{pmatrix}1\\-1\end{pmatrix},\qquad P=\begin{bmatrix}1&1\\1&-1\end{bmatrix}

若新基中的一个向量为 [v]B=(21)[\mathbf v]_B=\begin{pmatrix}2\\1\end{pmatrix},则旧基下这个向量为:

[v]E=P[v]B=2b1+b2=(31)[\mathbf v]_E=P[\mathbf v]_B =2\mathbf b_1+\mathbf b_2 =\begin{pmatrix}3\\1\end{pmatrix}

在这个例子中真正发生的是:同一个向量 v=(3,1)\mathbf v=(3,1),换了一套走步方向来描述,新基为 b1b2b_1、b_2的情况下:

b1=(1,1),b2=(1,1)\mathbf b_1=(1,1),\qquad \mathbf b_2=(1,-1)
  • 用标准基 e1,e2\mathbf e_1,\mathbf e_2:走 33 步水平方向、11 步竖直方向;
  • 用新基 b1,b2\mathbf b_1,\mathbf b_2:沿斜着的 b1\mathbf b_122 步、沿 b2\mathbf b_211 步。

两种走法到达的是同一个终点,改变的是坐标系数和参照方向,不是向量本身:

v=3e1+1e2=2b1+1b2\mathbf v =3\mathbf e_1+1\mathbf e_2 =2\mathbf b_1+1\mathbf b_2

运算:从旧基坐标换到新基坐标

如果已知旧基坐标 [v]E[\mathbf v]_E,想找新基坐标 [v]B[\mathbf v]_B,就需要解:

P[v]B=[v]EP[\mathbf v]_B=[\mathbf v]_E

PP 可逆时:

[v]B=P1[v]E[\mathbf v]_B=P^{-1}[\mathbf v]_E

因此,P1P^{-1} 是“旧基坐标 \to 新基坐标”的转换矩阵,而 PP 是“新基坐标 \to 旧基坐标”的转换矩阵。

运算:同一个线性变换在新基下的矩阵

问题

已知线性变换 TT 在旧基 EE 下的矩阵为 AA

yE=AxE\mathbf y_E=A\mathbf x_E

求 T 在新基 B 下的矩阵 [T]B[T]_B ,使得:

yB=[T]BxB\mathbf y_B = [T]_B\,\mathbf x_B

解法:三步走

对一个新基坐标输入 xB\mathbf x_B

  1. 翻译输入xE=PxB\mathbf x_E=P\mathbf x_B
  2. 执行旧坐标下的变换yE=AxE\mathbf y_E=A\mathbf x_E
  3. 翻译输出yB=P1yE\mathbf y_B=P^{-1}\mathbf y_E

把三步连起来:

yB=P1yE=P1AxE=P1A(PxB)=(P1AP)xB\begin{aligned} \mathbf y_B &=P^{-1}\mathbf y_E\\ &=P^{-1}A\mathbf x_E\\ &=P^{-1}A(P\mathbf x_B)\\ &=(P^{-1}AP)\mathbf x_B \end{aligned}

因此,同一个线性变换在新基下的矩阵为:

[T]B=P1AP[T]_B=P^{-1}AP

具体例子

仍使用:

P=[1111],P1=12[1111]P=\begin{bmatrix}1&1\\1&-1\end{bmatrix},\qquad P^{-1}=\frac12\begin{bmatrix}1&1\\1&-1\end{bmatrix}

假设旧基下的变换为:

A=[2003]A=\begin{bmatrix}2&0\\0&3\end{bmatrix}

新基下的矩阵为:

[T]B=P1AP=[2.50.50.52.5][T]_B=P^{-1}AP =\begin{bmatrix}2.5&-0.5\\-0.5&2.5\end{bmatrix}

取新基坐标输入 xB=(21)\mathbf x_B=\begin{pmatrix}2\\1\end{pmatrix},按三步计算:

xBPxE=(31)AyE=(63)P1yB=(4.51.5)\mathbf x_B \xrightarrow{P} \mathbf x_E=\begin{pmatrix}3\\1\end{pmatrix} \xrightarrow{A} \mathbf y_E=\begin{pmatrix}6\\3\end{pmatrix} \xrightarrow{P^{-1}} \mathbf y_B=\begin{pmatrix}4.5\\1.5\end{pmatrix}

直接使用新基矩阵也得到相同结果:

[T]BxB=[2.50.50.52.5](21)=(4.51.5)[T]_B\mathbf x_B =\begin{bmatrix}2.5&-0.5\\-0.5&2.5\end{bmatrix} \begin{pmatrix}2\\1\end{pmatrix} =\begin{pmatrix}4.5\\1.5\end{pmatrix}

所以 P1APP^{-1}AP 的含义是:先把新基坐标翻译成旧基坐标,执行 AA,再把结果翻译回新基坐标。