构成一个分子的原子间夹角怎么测量？
这是我的本行，我要来答一个。 太长不看版：每个分子都会转动。物体转动，就会有一个叫做「转动惯量」的物理量（可以类比直线运动中的「质量」）。 理论上，转动惯量和分子中各个原子的质量和位置有关；实验中，转动惯量可以由我的本行转动光谱学精确测出（此处省略一万字怎么测……这得讲一本书那么多）。测出转动惯量[1]，反推原子的位置，再根据原子的位置坐标，求出夹角。 对于能测转动谱的小分子，这种方法是比较准的。对于测不动的大分子，有 @Triborg 老师提到的一些计算方法。 下面简单写一些公式。 对一个 N 原子分子，记它的每个原子的质量分别为 m_i ，原子坐标（直角坐标系）为 (X_i, Y_i, Z_i) , i=1\ldots N. 这个分子的质心坐标为： q_\text{COM} = \frac{\sum_{i=1}^N m_i q_i}{\sum_{i=1}^Nm_i}, \quad q = X, Y, Z 我们要先把坐标系原点换到质心，即 x_i = X_i - X_\text{COM} \\ y_i = Y_i - Y_\text{COM} \\ z_i = Z_i - Z_\text{COM} 然后，这个分子相对于质心坐标的转动惯量 I 可以写成一个二阶张量形式： I = \begin{pmatrix} I_{xx} & I_{xy} & I_{xz} \\ I_{yx} & I_{yy} & I_{yz} \\ I_{zx} & I_{zy} & I_{zz} \\  \end{pmatrix} 每个分量是什么呢？主对角元 I_{qq} = \sum^N_{i=1} m_i(x_i^2+y_i^2+z_i^2 - q_i^2) , \quad q = x, y, z 非对角元 I_{qr} = I_{rq} = - \sum_{i=1}^N m_i q_i r_i, \quad q, r = x, y, z 把矩阵 I 对角化，得到一个对角矩阵 I_0 = \begin{pmatrix} I_{aa} & & \\ & I_{bb} & \\ & & I_{cc} \end{pmatrix} = P^{-1}IP 其中 a, b, c 就是转动的三个主轴，而 I_{aa}, I_{bb}, I_{cc} 就是实验中可以测量到的转动惯量数值。  好啦，下面就是解方程时间了。可以看到，N 原子分子的坐标有 3N 个，实验中只能测到 3 个转动惯量。存在夹角的分子， N\geq3 ，至少也有 9 个坐标了。怎么办呢？有两个重要的手段。 第一，根据分子对称性，减少自由坐标的数量。例如水分子（ \text{H}_2\text{O} ），3 个原子肯定共面（减 3 自由度），而且两个H-O 键键长应该是一样的（再减 4 自由度），于是只剩下 2 个自由度了。再比如，甲烷（ \ce{CH}_4 ）根据分子对称性，就根本不用实验测量。四面体内部的键角，肯定是 109°28′（高中几何题目）。 第二，实验中，我们会去做同位素取代。一个核心的假设是：同位素取代只改变原子的质量，却不改变原子的坐标（保持分子结构不变）。这样一来，比 3 多出一个自由度，就多做 1 个同位素取代，多得到一组方程。最终的原子坐标通过联立方程求解。 小学二年级例题：计算水分子（ \ce{H2O} ）的键角。已知水分子的三个转动惯量分别为：0.604414, 1.160427, 1.81634，单位为 amu * 埃。根据对称性，我们设水分子的坐标分别为 \ce{O}: (0, 0, 0) \\ \ce{H}1: (X, Y, 0) \\ \ce{H}2: (X, -Y, 0) \\ \text{COM}: (\frac{X}{9}, 0, 0) I = \begin{pmatrix} 2Y^2 & & \\ & \cfrac{16}{9}X^2 & \\ & & \cfrac{16}{9}X^2+2Y^2 \\ \end{pmatrix} ，已经是对角阵了 解得 X = \frac{3}{4}\sqrt{0.604414} = 0.58308 \,\, \AA Y = \sqrt{1.160427 / 2} = 0.76172 \,\, \AA 所以水分子键长为 \sqrt{X^2+Y^2} = 0.95927 \,\, \AA 键角为 2 \arctan \frac{Y}{X} = 105.1 ^\circ 文献值（NIST）[2]： 已经蛮接近了。误差主要来自实验值的 I_{aa} + I_{bb} < I_{cc} ，但我们理论上根据对称性，应该是 I_{aa} + I_{bb} = I_{cc} 。造成这个的原因相对复杂，振动和离心的各种修正啦，就不展开讲了。