“广义相对论的钥匙:张量”专题之一

“张量”是广义相对论的钥匙,用来表示与坐标无关的量。
这一系列文章源自此系列视频,需要科学上网。
此系列文章算是该视频的读书笔记,不过加入了个人对线性代数的理解,以及增加了很多动画帮助理解。
“张量”是稍微高级一点的数学概念,是线性代数的延伸,也可以看作对线性代数知识的集大成。如果有兴趣学习线代基础,可以加我们的公众号,参加“线代基础班”。
根据维基百科的介绍,“张量”一词最初由威廉·罗恩·哈密顿在1846年引入。对,就是那个发明四元数的哈密顿:
1890年格雷戈里奥·里奇-库尔巴斯托罗的《绝对微分几何》、1900年列维-奇维塔的《绝对微分》进一步在数学上发展了“张量”的概念。
伟大的物理学家,爱因斯坦为了描述他的天才想法,恶补了黎曼几何和张量分析,终于在这两大数学工具的帮助下,创立了他最为得意的弯曲时空的物理理论:广义相对论。至此张量在物理上大放光彩。如果想学习广义相对论,张量肯定是需要学习的。
广义相对论中最核心的思想就是质量会带来时空弯曲,就好像保龄球滚过长绒地毯:
可以想象,时空弯曲中有大量的几何关系,为了描述复杂的几何关系,爱因斯坦引入了“张量”,比如著名的爱因斯坦场方程
上面式子中,就是各种的张量。
可以先有一个直观印象,“张量”就是用来描述几何的,这里几何指的是什么?后面很快就会解释。
1 关于张量的四种定义
“张量”在不同的运用场景下有不同的定义。
第一个定义,张量是多维数组,这个定义常见于各种人工智能软件。听起来还好理解。
第二个定义,张量是某种几何对象,不会随着坐标系的改变而改变。
第三个定义,张量是向量和余向量(covector)通过张量积(tensor product)组合而成的。
第四个定义,张量是多重线性映射,即:
其中,是矢量空间,是对应的对偶空间。
好了,不闹了,后面的文章会尝试逐一解释这四种定义,并且可以看到这四种定义是不断认知升级的结果。
2 多维数组
从第一个定义:张量是多维数组开始。
现在机器学习很火,知名开源框架tensor-flow是这么定义tensor(张量)的:

A tensor is a generalization of vectors and matrices to potentially higher dimensions

也就是说,张量(tensor)是多维数组,目的是把向量、矩阵推向更高的维度。
更具体点,也即是说:
把三维张量画成一个立方体:
我们就可以进一步画出更高维的张量:
从数据结构上来看,张量就是多维数组。
这个定义本身没有错,但是没有真正反映张量的核心。
3 几何对象
我们来看下第二个定义:张量是某种几何对象,不会随着坐标系的改变而改变。
3.1 二维平面
最简单的几何对象就是二维平面,在线性代数中称为(这是一个向量空间),下面用一个有颜色的方框来表示
这个可以通过直角坐标系来描述(也就是单位正交基来张成):
也可以由别的坐标系来描述(别的基来张成),当然本身不会因为基不同而发生改变: