第9章 向量与空间解析几何
Tip
为什么要学习向量?
例如我们在C++里可以进行运算 。
得到
而在 Python 中可以直接进行向量运算
得到 .
向量是神经网络里的基本操作对象. 一张图片可以看成一个向量, 例如一个 28x28 分辨率的手写数字图片8, 可以看成是一个28x28=784维的向量. 一段文字也可以看成是一个向量, 把文字映射成向量也叫做word embedding, 这是一个非常有趣的问题.
9.1 向量
9.1.1 向量的概念
Important
什么是向量?
向量可以从数和形两个方面去理解.
向量的数属性
向量就是一串有序的数字 . 称为向量的维数, 叫做向量 的分量. 分量 可以属于实数集, 也可以属于复数集. 如不加说明, 本课程中所考虑的向量的分量均为实数, 所有的 维实数向量构成的集合记作 .
向量的形属性
向量也可以看成是一个箭头, 既有长度, 又有方向. 例如 中的向量 可以看成是二维直角坐标系下从点 指向点 的一个箭头. 高维向量 也可以看作是一个箭头, 它是一个高维直角坐标系下中从坐标原点指向点 的箭头.

Important
首先我们统一一下记号. 原则上, 空间中的向量 可以横着写:
也可以竖着写
一下我们规定所有的向量都采用竖着写的形式. 所以当我们说 时, 指的是 , 为了节省空间, 我们可以把上述向量写成 , 这里的 T 不是躺平的躺的意思, 而是 转置 (Transform).
Warning
向量相等
从数上看, 两个向量相等当且仅当其对应分量分别相等; 从形上看, 只要两个向量的长度和方向相同,起点无论在哪,它们都是同一个向量 (这就是物理中所谓的平移不变性).
9.1.2 向量的运算
Tip
接下来我们介绍向量的四种运算: 加法, 数乘, 点乘和叉乘.
9.1.2.1 向量的加法
Important
向量的加法
以二维平面 中的向量为例:
数属性下的加法
向量 与向量 之间的加法定义为对映分量元素之间的和, 即
形属性下的加法
向量 与向量 之间的加法还可以看成两个向量对映箭头首尾相接后形成的从起点到终点的新箭头.
Note
向量加法的性质
交换律(Commutative Law)
对于任意向量 和 ,有
数: 坐标表示:
形: 平行四边形法则:
结合律 (Associative Law)
对于任意向量 、 和 ,有
数: 坐标表示:
设 ,,,则
两者结果相同。
形: 多边形法则:
9.1.2.2 向量的数乘
Important
向量的数乘
以二维平面 中的向量为例:
数属性下的数乘
向量 与实数 之间的数乘定义为乘到向量的每一个分量上, 即
形属性下的数乘
向量 与实数 之间的数乘可以看成保持向量 的方向不变, 将其长度变为原来的 倍.
Warning
向量的减法可以通过加法和数乘表示:
向量没有除法!
Note
数乘运算的性质
结合律
对任意标量 和向量 ,有
数: 坐标表示:
形: 缩放:
分配律
对任意标量 和向量 ,有
数: 坐标表示:
形: 缩放:
9.1.2.3 向量的点乘
Important
向量的点乘
数属性下的点乘
向量 与向量 之间的内积定义为对映分量乘积的和, 即
形属性下的点乘
向量 与向量 的内积其中一个向量 在另一个向量 的方向上投影的长度(带符号)乘以向量 本身的长度. 也可以写成:
其中 为 和 所对应的两个箭头之间的夹角.
Warning
注意, 两个向量的点乘是一个实数. 点乘是一种非常重要的运算, 在机器学习, 量子力学, 线性代数和泛函分析都有广泛应用.
在不同语境下, 点乘 (dot product) 也常常称为 内积 (inner product) 或 数量积 (scalar product).
Important
点乘的性质
交换律
点乘与向量加法的结合律
点乘与向量长度
称为向量的模, 模长等于1的向量称为单位向量.
点乘与归一化
任给非零向量 , 新向量 与原向量 方向相同, 模长为1, 这个过程称为向量的归一化.
点乘与角度
点乘与垂直
在上式中, 当 等于0时, , 表明两个向量垂直, 也叫做正交(orthogonal)
点乘与投影
一个向量 在另一个 所在方向上的投影还是一个向量, 该向量的模长等于 与单位向量 的内积, 方向与 一致.
投影的过程相当于将 分解成两部分的和, . 其中 与 平行, 与 垂直, 此时 的模长是所有分解中最小的.
9.1.2.4 向量的叉乘
Important
向量的叉乘
数属性下的叉乘
对于三维空间中的向量 与向量 ,它们的叉乘通过一个三阶行列式(符号记法)来定义与计算:
其中 分别为沿 轴的单位向量。
形属性下的叉乘
向量 与向量 的叉乘结果是一个新的向量 ,它同时具有大小和方向:
Warning
注意,与点乘得到一个实数不同,两个向量的叉乘结果是一个向量。而且,叉乘是专门针对三维空间向量定义的运算。
在不同语境下,叉乘 (cross product) 也常常称为 向量积 (vector product)。它在力学(如计算力矩、洛伦兹力)和空间解析几何(如快速寻找平面的法向量、计算多边形面积)中有重要应用。
9.1.3 向量空间
Tip
数学里面有很多空间, 比如欧几里得空间, 希尔伯特空间(完备的线性赋范空间), 黎曼空间(具有黎曼度量的微分流形), 卡拉比-丘空间(紧致的复的凯勒的流形, 具有里奇平坦的度量)等等. 空间本质上其实就是一个集合, 但不是所有的集合都能叫做空间(不是所有的牛奶都叫特仑苏). 能够称之为空间的集合往往都有一些比较好的性质. 中的所有向量所构成的集合是一个空间, 叫做 维向量空间, 也叫做欧几里得空间. 这个空间有很好的性质(想想<你的名字>里黄昏时的情景, 那个就不是一个好空间).
Important
向量空间
所有的 维实数向量构成一个集合, 记作 , 这个集合也叫做 维向量空间, 也叫做欧几里得空间.
这个空间最重要的性质是: 空间中的元素对加法和数乘封闭. 也就是说, 中两个向量的和还是 中的向量, 任意实数 数乘一个向量也还在 中, 哪怕 , 此时得到的是一个维数跟 相同的0向量(元素皆为0). 零向量不等于数字0.
从计算机编程的角度看, 封闭性的一个最大好处是不用每次执行运算后判断结果是不是还在这个空间里.
向量空间的另一个重要性质是: 任给 中的两个向量 , ,它们之间可以定义距离:
上述距离也称为欧氏距离, 正是在欧氏距离的规整下, 所有的向量构成了所谓的欧氏空间.
9.2 直线和平面
Tip
直线和平面可以看作是空间中一些特殊的点构成的集合. 在数学上可以用不同的方法来描述这些集合中的点. 向量语言是其中的一种方法.
9.2.1 二维空间中的直线
Important
以二维平面上的直线为例, 我们知道所有满足方程 的点 构成了一条直线, 这条直线的斜率为 , 截距为 , 反过来看, 给定了斜率 和截距 , 我们可以通过方程 来描述所有集合(直线)中的点.
通过向量我们可以用另一种方式描述直线. 任意给定一个二维平面中的向量 , 所有满足 的向量 所对应的点都位于一条与向量 垂直, 且与原点的距离为 的直线上. 因此 也描述了一条直线, 这是通过向量运算给出直线方程的方法.
反过来, 如果给定直线的法向 , 其中 为单位向量, 另外再给定有向距离 ( 可以小于0), 则
描述了一条与 垂直, 且与原点的距离为 ( 表示直线相对原点的位置与 的指向相反) 的直线.
进一步, 假定 , 则在坐标形式下上式可以写为
而这正是一个直线方程.
Note
直线的例子
假设在二维平面中,有一条直线的法向量为 (此时它还不是单位向量,其模长为 )。我们将其归一化得到单位法向量 。
如果这条直线到原点的有向距离为 ,那么这条直线上的任意一点 必须满足:
化简后即可得到我们熟悉的一般直线方程形式:。
Tip
向量观点下的直线跟我们中学学过的坐标形式下的直线本质上是完全一样的, 只不过通过向量观点丰富了我们对直线的理解, 而且在一些问题中, 向量观点往往更加直观和简洁.
Important
直线方程的一般形式
我们中学学过, 二维平面中直线的一般形式可以写成
在向量观点下, 我们可以把 看成是一个向量, 将其归一化得到向量 , 同时定义 , 则该方程描述了一条与向量 垂直, 且距离原点的有向距离为 的直线.
Important
点到直线的距离
我们中学学过, 二维平面中任意一点 到直线 的距离可以写成
这个结论如何证明呢?
可以用传统的解析几何的方法, 先写出过点 垂直于给定直线的直线方程, 然后求两条直线的交点, 最后求点 到该交点的距离.
在向量观点下, 我们可以计算向量 在单位向量 方向上的投影, 即 . 与 的差的绝对值 即为该点到直线的距离. 可以得到
与前面解方程得到的方法结果一样.
9.2.2 三维空间中的平面
Tip
三维空间中的平面跟二维空间中的平面在数学地位上是对等的.
Important
类似于二维空间中直线的描述, 三维空间中, 给定法向量 和有向距离 , 所有在 上投影长度为 的向量 构成一个平面.
设 , , 则方程 成立. 再令 , 得到平面方程为:
这正是三维空间中平面方程的标准形式. 从方程中我们也可以看出, 向量 所在的方向就是平面的法方向.
Note
点到平面的距离
三维空间中的点 到平面 的距离的求法和二维平面中点到直线的距离求法类似. 最后可以得到:
Important
三维空间中的直线
空间直线可以看作是两个平面 和 的交线。也就是说, 方程组
联立得到的解就是一条直线,这被称为空间直线的一般方程。
除了一般方程,如果已知直线上一点 和直线的方向向量 ,则直线上任意一点 构成的向量 必定与 平行。由此可得直线的对称式方程(点向式方程):
令上述比例等于参数 ,即可导出直线的参数方程:
9.2.3 高维空间中的平面
Tip
, 是不是看起来很熟悉?
在 的高维欧氏空间中,这定义了一个超平面 (Hyperplane)。就像三维空间里的平面是由一个法向量决定的一样,这个高维方程本质上也是在说:所有满足该方程的点构成的向量 ,与固定的法向量 的内积是一个常数 。高维空间虽然无法被直观地画出来,但向量运算的代数本质却能完美地从低维推广到任意维度。
9.2.4 几道习题讲解
Note
同济大学《高等数学》第八版(下) P30-34 例1至例6 解析
例1:直线形式的相互转化
题目: 用对称式方程及参数方程表示直线 。
解析:
先在直线上找一点。令 ,代入原方程组得到 ,解得 。所以直线上有一点 。
再找直线的方向向量 。因为直线在两个平面上,所以它的方向向量必定同时垂直于这两个平面的法向量 和 。
取 。
从而得到对称式方程:。
令其等于 ,得到参数方程:。
例2:两直线的夹角
题目: 求两直线 和 的夹角。
解析:
两直线的夹角就是它们方向向量的夹角(通常取锐角或直角)。
从方程读出方向向量:, 。
利用内积公式求夹角的余弦:
所以夹角 。
例3:求直线方程(已知法面)
题目: 求过点 且与平面 垂直的直线方程。
解析:
因为要求的直线与已知平面垂直,所以平面的法向量就可以直接作为直线的方向向量 。
平面法向量 ,所以取 。
结合已知点 ,直接写出对称式方程:。
例4:求直线方程(平行于交线)
题目: 求与两平面 和 的交线平行且过点 的直线方程。
解析:
要求的直线与两平面的交线平行,这意味着它的方向向量 必须同时垂直于这两个平面的法向量 和 。
取叉乘 ,即 ,为方便可取 。
结合点 ,得到直线方程 。
例5:直线与平面的交点
题目: 求直线 与平面 的交点。
解析:
求交点最快的方法是将直线的参数方程代入平面方程。
设直线参数方程为:。
代入平面方程:。
解得 。
将 代回参数方程,得到交点坐标为 ,即 。
例6:垂直相交的直线方程
题目: 求过点 且与直线 垂直相交的直线方程。
解析:
先写出已知直线的参数方程:。
设所求直线与已知直线的交点为 。
已知点为 ,则方向向量 。
因为两直线垂直,所以 必须与已知直线的方向向量 正交,即内积为0:
。
将 代回 ,得到 。提取公因数,可以取一个更简单的平行向量作为方向向量:。
结合已知点 ,得到最终方程:。
9.3 曲面
Tip
前面的向量空间为下一章的多元微积分搭建了舞台, 接下来我们在这个舞台上增加一些道具, 用以作为多元微积分的研究对象.
Important
一般来说, 对于定义在 上的多元函数 , 方程
的解集对应着 空间中的一些点所构成的集合. 当 具有某种连续性的时候 (注意多元函数的连续性我们现在还没有介绍), 这个点集也会具有某种连续性, 就像空间中的一块或多块布一样, 因此我们可以称其为曲面.
下面我们以二维和三维空间为例来介绍一些常用的曲面.
一次曲面
前面我们讲了三维空间中的平面方程的一般形式为
注意到函数 关于所有变量 最高都是一次的, 因此我们也把平面称为一次曲面, 在二维空间中它就是我们中学所熟知的直线.
二次曲面
在中学我们还学过二维空间中的抛物线, 如 , 它关于 是二次的. 我们还学过抛物线和椭圆, 如 , 它关于 也是二次的. 在三维空间我们也类似有这样的二次曲面, 其一般形式为
关于变量 的最高阶都是二次的, 我们上述方程所对应的平面称为二次曲面.
Note
我们来看几个二次曲面的例子.
1. 球面 (Sphere)
2. 椭球面 (Ellipsoid)
Note
旋转曲面
旋转曲面是由平面曲线绕某一固定轴旋转生成的曲面,具有轴对称性。其方程可通过原曲线方程的坐标变换推导:
例1:旋转抛物面
原曲线:抛物线 (在 平面内,开口向上)。
旋转轴:绕 轴旋转。
曲面方程:
图像特点:碗状曲面,开口方向由系数 的符号决定( 时开口向上)。
应用:卫星天线、太阳能聚光器(平行光线反射至焦点)。
例2:圆锥面
9.4 曲线
Tip
二维空间中的两条直线相交得到一个点, 三维空间中的两个平面相交得到一条直线, 这是曲线的两个简单实例.
Note
三维空间中, 两个曲面的交集
这叫做空间曲线的一般方程。
这样的交集长什么样呢?
同济教材 例1
题目:方程组 表示怎样的曲线?
解析:方程组中第一个方程表示母线平行于 轴的圆柱面,其准线是 面上圆心在原点、半径为 的圆。第二个方程表示一个母线平行于 轴的柱面(它是一个平面)。该方程组表示的就是这圆柱面与平面的交线,即一个椭圆。
同济教材 例2
题目:方程组 表示怎样的曲线?
解析:第一个方程表示球心在坐标原点 、半径为 的上半球面。第二个方程表示母线平行于 轴的圆柱面,它的准线是 面上圆心在 、半径为 的圆。该方程组就表示上述半球面与圆柱面的交线(常被称为维维亚尼曲线 Viviani's curve)。
Important
用参数方程描述曲线
空间曲线除了一般方程外,还可以用参数形式表示,即将曲线上点的坐标表示为参数 的函数。
二维空间中直线的参数方程
假设直线过定点 ,方向向量为 ,利用参数 ,其方程为:
二维空间中圆的参数方程
假设圆心在原点 ,半径为 ,利用极角 (或时间 )作为参数:
三维空间中的螺旋线
如果空间一点 在圆柱面 上以角速度 绕 轴旋转,同时又以线速度 沿平行于 轴的正方向上升,这动点的轨迹就叫螺旋线。其参数方程为:
也可以用旋转角 作为参数,令 ,螺旋线参数方程可写为更简明的形式:
Important
极坐标
二维空间的极坐标
其中 为离心率(), 为焦准距.
三维空间的球极坐标
径向距离 :点到原点 的距离,范围 。
极角 (天顶角, zenith):点与正 轴的夹角,范围 。
方位角 (azimuth):点在 平面上的投影与正 轴的夹角,范围 。
球坐标 → 直角坐标:
Warning
在大航海时代,航海家们需要精确地确定自己在海洋中的位置。天顶角和方位角的测量成为了关键技术。例如,著名航海家麦哲伦在其环球航行中,就利用了简单的天文仪器来测量天体的天顶角和方位角。通过测量北极星的天顶角,他可以估算出船只的纬度;而通过测量太阳或其他恒星的方位角,他能确定船只的航向。这在当时简陋的航海条件下,为航海家们开辟新航线、探索未知世界提供了重要的导航依据,对人类的航海事业和地理认知的拓展产生了深远影响 。
Important
曲线的投影
设空间曲线 的一般方程为 且 。从中消去变量 ,得到的新方程 表示一个母线平行于 轴的投影柱面,它与 面的交线就是空间曲线在 面上的投影曲线。
同济教材 例4
题目:已知两球面的方程为 和 ,求它们的交线 在 面上的投影的方程。
解析:先求包含交线 而母线平行于 轴的柱面方程。将两方程相减以消去 ,得到 ,即 。再将 代入第一个方程中,得到要求的柱面方程:
这就是交线关于 面的投影柱面方程。因此两球面的交线 在 面上的投影的方程是:
同济教材 例5
题目:设一个立体由上半球面 和锥面 所围成,求它在 面上的投影。
解析:半球面和锥面的交线满足条件 。由该方程组消去 ,得到:
这是一个母线平行于 轴的圆柱面,它就是交线关于 面的投影柱面。因此交线在 面上的投影曲线为 。立体在 面上的投影即为圆面上的部分,即所求投影为闭区域: