- 程序员数学:用Python学透线性代数和微积分
- (美)保罗·奥兰德
- 569字
- 2022-04-27 10:54:20
第 5 章 使用矩阵计算变换
本章内容
- 将线性变换写成矩阵
- 用矩阵相乘来组合并应用线性变换
- 用线性变换操作不同维度的向量
- 使用矩阵平移二维向量或三维向量
我在第4章的结尾提出了一个很重要的思想:任何三维线性变换都可以只用3个向量或9个数来指定。正确选择这9个数,可以实现绕轴旋转、平面反射、平面投影、缩放,或者其他任意三维线性变换。
“绕轴逆时针旋转90°”的变换可以被等价描述为对标准基向量、和的作用。也就是说,结果是(0, 1, 0)、(-1, 0, 0)和(0, 0, 1)。无论是以几何学的方式还是以3个向量(9个数)的方式思考这个变换,它都是同一个对三维向量进行操作的虚拟机器(见图5-1)。虽然实现方式可能不同,但这些机器产生的结果别无二致。
图5-1 两台机器执行相同的线性变换。几何推理为上面的机器提供动力,而9个数则为下面的机器提供动力
排列在网格中、用于说明如何执行线性变换的数被称为矩阵。本章重点介绍如何使用这些数字网格作为计算工具,因此包含的数字运算比前几章多了一些。不要被吓到!归根结底,我们仍然只是在进行向量变换。
矩阵可以利用对标准基向量的操作数据,计算给定的线性变换。本章的所有表示法都是为了组织这个过程,4.2节已经介绍过了,这里并没有引入任何其他陌生的概念。学习新的表示法虽然痛苦,但是有回报。最好将向量看作几何对象或数字元组。同样,将线性变换看作数字矩阵,可以拓展我们的心智模型。