前言
前一章我们成功的在集合上定义出了一种较为抽象的结构:拓扑结构。但是从物理学的实用角度来讲,拓扑空间又太过抽象、无法在其上研究任何具有实际物理意义的实体。我们希望能够在拓扑空间上再定义一些更加熟悉、更加“实用”的结构。从物理的角度来讲,实用意味着直观上“连续”并且至少从局部上看是与$\mathbb{R}^n$的(这么说似乎目的有点过于明确了)。现在我们来尝试定义这种结构。
微分流形
为了完成以上两个目标,我们先试着说明局部与$\mathbb{R}^n$类似这一性质。考虑拓扑空间$(M, \mathcal{T}_M)$中任意一点$x$。“局部与$\mathbb{R}^n$类似”意味着$x$的一邻域与$\mathbb{R}^n$同胚,即
\[\forall x \in M,\ \exists O \in \mathcal{T}_M\ s.t. x \in O \wedge \exists \psi : O \rightarrow V (V \in \mathcal{T}_{\mathbb{R}^n}).\]其中$V$是$\mathbb{R}^n$中的一个开子集。这样我们就可以很好的用数学语言描述$M$的局部“长得像”$\mathbb{R}^n$这一特点。
接下来我们尝试说明流形从直观上连续。虽然同胚于$\mathbb{R}^n$是个局部的性质,但是想象有一个更高维的技艺高超的裁缝将所有的“碎布”缝在一起,变成了宏观上一整块布。现在我们能发现,描述这种直观的连续性的要点就在于如何描述这种技艺高超的缝合技术。我们再回忆一下现实中缝合的方法:最普遍的方法大概就是将两块布重叠并用线将他们固定在一起。我们现在试图用数学语言来描述这一过程。
首先要考虑的便是两块“碎布”。我们任取$M$中的两个开子集$O_1, O_2$,并要求$O_1 \cap O_2 \neq \emptyset$。这样我们就有了两块碎布以及其重叠的部分。接下来我们将其“缝合”在一起。考虑$O_1$和$O_2$上的同胚映射$\psi_1$,$\psi_2$。我们就会有$\psi_1(O_1) = V_1$,$\psi_2(O_2) = V_2$。不妨设$V_1 \cap V_2 \neq \emptyset$。那么我们就能发现,如果我们要求映射$\psi_2 \circ \psi_1^{-1}$是光滑的,那么就意味着我们能够很自然地从$O_1$过渡到$O_2$。这样我们就将两块碎布缝在了一起。注意到如果我们改变复合映射的可微条件(如将光滑的,即$C^\infty$的,改成$C^k$的),那么我们就可以得到不同程度上连续的流形。但之后我们考虑的都是光滑流形。
以下更加简洁的定义和上述描述也是等价的:
$\psi_\mu$被称作图,而所有图的集合被称作图册(Atlas)。有趣的是,atlas还有一个词义是地图;而这也暗示了图册的物理意义:一个图册就和一个地图一样,将一个并不一定平坦的球面$\mathbf{S}^2$映射到了一张平坦的纸$\mathbb{R}^2$上。和定义拓扑一样,我们也可以在同一个拓扑空间上定义两个不同的图册;但是只要两个图册的元素之间都满足其复合映射是$k$次可微的(或者光滑的),那么我们就称这两个图册在拓扑空间上给出同一个可微结构。
切空间
既然我们已在流形上定义出了类似$\mathbb{R}^n$的结构,接下来我们想做的自然就是试图在流形上做一些在$\mathbb{R}^n$上很自然的事情,比如向量。
我们先回忆一下欧氏空间中的向量。欧氏空间$\mathbb{R}^n$中某一点处的一个向量可以看作是一个作用于该点处一个可微函数的一个线性算子,即
并且由其导数的实质可以得出以下两条规则:
\[\begin{cases} v(f+\lambda g) = v(f) + \lambda v(g) \\ v(f \cdot g) = f(p)v(g) + g(p)v(f) \end{cases}\]第二条规则也常被称作莱布尼茨法则。由以上的讨论,我们发现某一点处的向量仅仅依赖于那个点的邻域附近的函数的性质。这样,我们也可以较为方便的在流形上定义向量。
函数芽
如果一点$m \in M$邻域上的两个函数$f, g$在这个邻域上一致,那么我们称这两个函数在$m$点具有相同的函数芽。我们将在$m$点的所有函数芽的集合记为$\tilde{F}_m$,其元素记为$\mathbf{f}$。对于其中的一个芽$\mathbf{f}$,$\tilde{F}_m$给出了其在$m$点的一个完全确定的值$\mathbf{f}(m)$。注意到其实函数的运算(例如加法、数乘和乘法)在$\tilde{F}_m$上诱导出了一个$\mathbb{R}$上的代数结构。既然有了类似$\mathbb{R}^n$的结构,我们自然可以在其上定义一个作为线性求导算子的切向量:
定义 在点$m \in M$处的一个切向量$v$是代数$\tilde{F}_m$的一个线性求导算子,即$\forall \mathbf{f}, \mathbf{g} \in \tilde{F}_m, \lambda \in \mathbb{R}$,
这种操作的思路是,我们要在原始的流形上一点附近的函数空间附加上额外的结构以便我们能在其上定义我们熟悉的“求导”。我们用$V_m$来代表$m$处所有切向量的集合,那么$\forall u, v \in V_m , \lambda \in \mathbb{R}$,定义
\[\begin{cases} (u+v)\mathbf{f} = u(\mathbf{f})+v(\mathbf{f})\\ (\lambda v)(\mathbf{f}) = \lambda v(\mathbf{f}) \end{cases}\]
按照这种定义方式,新的向量$(u+v)$和$(\lambda v)$仍然是$V_m$中的元素,如此$V_m$就成为了一个向量空间,我们称其为切空间,且我们不加证明的指出$\dim V_m = \dim M$。
函数芽的概念帮助我们在流形上的每一点处依赖其邻域定义了一个向量空间。但是在实际应用的时候,我们依旧认为切向量是作用于函数本身而非函数芽上的,即定义$v(f) = v(\mathbf{f})$,这种“新的”切向量显然与前一种定义是类似的,只不过需要把函数芽全部改成给定函数。
现在我们尝试将流形上的函数$f$通过图放入$\mathbb{R}^n$的开子集中。图给流形中的开子集赋予了一个坐标系,因此就应有$f = f(x\mu)$;由图的定义我们有$\psi(x^\mu) = r^\mu$,其中$r^\mu$为$\mathbb{R}^n$中的典范坐标系。那么如果我们将$f$放回$\mathbb{R}^n$中再求偏导,就会有
可以发现等式右边的式子实际上只依赖于$m$点附近的函数(或者说依赖于函数芽$\mathbf{f}$)。我们将右式写作更清晰的形式:
\[\left(\frac{\partial}{\partial x^\mu} \right)\Bigg|_m (f)\]这样我们定义这样一个“偏导数”
$\partial/\partial x^\mu\big\vert_m$ 作为我们在 $m$ 点附近的切向量,发现它满足我们对于定义的切向量的要求,并且这样一些偏导数的集合还构成了切空间的一个基。为了方便,我们将 $\partial/\partial x^\mu\big\vert_m$ 简记为 $\partial_\mu\big\vert_m$ 。由于这些偏导数组成 $V_m$ 上的一个基,那么 $V_m$ 中的任意一个向量都可以记作 $v = v^\mu\partial_\mu$ ,而这也与 $\mathbb{R}^n$ 中向量的定义类似。我们称 $v^\mu$为$v$ 的分量。我们以后多用坐标分量 $v^\mu$ 来代替向量本身。
如果假设$m$的邻域有另外一个图给出另一个坐标系$x^{\prime\mu}$,那么两个坐标系下的基满足以下变换关系:
这样我们就部分达成了我们的目标:在流形上定义出了向量的概念。