Skip to content

仿射坐标系下的向量度量性质:点积与夹角

核心思想

在非直角坐标系(仿射坐标系)中,坐标轴的夹角不再是 $90^\circ$,且单位长度可能不统一。为了计算点积和夹角,我们必须引入度量张量 (Metric Tensor) 来修正非正交性带来的影响。


1. 基础定义

设 $V$为$n$维欧几里得空间,取一组仿射基底$\lbrace \mathbf{e}_1, \mathbf{e}_2, \dots, \mathbf{e}_n\rbrace $。 对于任意两个向量 $\mathbf{a}, \mathbf{b} \in V$,其在基底下的坐标表示为: $$\mathbf{a} = \sum_{i=1}^n a^i \mathbf{e}_i, \quad \mathbf{b} = \sum_{j=1}^n b^j \mathbf{e}_j$$

1.1 度量张量 (Metric Tensor)

定义度量矩阵 $G = (g_{ij})_{n \times n}$,其中分量 $g_{ij}$ 是基向量两两之间的点积: $$g_{ij} = \mathbf{e}_i \cdot \mathbf{e}_j = |\mathbf{e}_i| |\mathbf{e}_j| \cos \langle \mathbf{e}_i, \mathbf{e}_j \rangle$$

矩阵形式

$$G = \begin{pmatrix} \mathbf{e}_1 \cdot \mathbf{e}_1 & \dots & \mathbf{e}_1 \cdot \mathbf{e}_n \newline \vdots & \ddots & \vdots \newline \mathbf{e}_n \cdot \mathbf{e}_1 & \dots & \mathbf{e}_n \cdot \mathbf{e}_n \end{pmatrix}$$ 在标准笛卡尔坐标系中,$G$是单位矩阵$I$。


2. 向量点积的计算

在仿射坐标系中,点积不再是简单的坐标乘积之和,而是必须通过度量张量进行“加权”:

$$\begin{aligned} \mathbf{a} \cdot \mathbf{b} &= \left( \sum_{i=1}^n a^i \mathbf{e}_i \right) \cdot \left( \sum_{j=1}^n b^j \mathbf{e}_j \right) \newline &= \sum_{i=1}^n \sum_{j=1}^n a^i b^j (\mathbf{e}_i \cdot \mathbf{e}_j) \newline &= \sum_{i,j=1}^n g_{ij} a^i b^j \end{aligned}$$

矩阵表达形式: $$\mathbf{a} \cdot \mathbf{b} = A^T G B$$ 其中 $A, B$ 分别为坐标列向量。


3. 模长与夹角

3.1 向量模长 (Norm)

向量 $\mathbf{a}$ 的模长定义为点积的平方根: $$|\mathbf{a}| = \sqrt{\mathbf{a} \cdot \mathbf{a}} = \sqrt{\sum_{i,j=1}^n g_{ij} a^i a^j}$$

3.2 夹角公式 (Angle)

设向量 $\mathbf{a}$与$\mathbf{b}$之间的夹角为$\theta$,根据定义: $$\cos \theta = \frac{\mathbf{a} \cdot \mathbf{b}}{|\mathbf{a}| |\mathbf{b}|}$$

将其展开为仿射坐标形式: $$\cos \theta = \frac{\sum_{i,j=1}^n g_{ij} a^i b^j}{\sqrt{\sum_{i,j=1}^n g_{ij} a^i a^j} \sqrt{\sum_{k,l=1}^n g_{kl} b^k b^l}}$$


4. 实例演示:二维 60° 仿射系

4.1 设定条件

假设基向量 $|\mathbf{e}_1| = 1, |\mathbf{e}_2| = 1$,且两基向量夹角为 $60^\circ$。

  1. 计算度量张量分量:
    • $g_{11} = 1 \cdot 1 \cdot \cos 0^\circ = 1$
    • $g_{22} = 1 \cdot 1 \cdot \cos 0^\circ = 1$
    • $g_{12} = g_{21} = 1 \cdot 1 \cdot \cos 60^\circ = 0.5$
  2. 度量矩阵: $$G = \begin{pmatrix} 1 & 0.5 \newline 0.5 & 1 \end{pmatrix}$$

4.2 计算具体向量

已知 $\mathbf{a} = (1, 0)$, $\mathbf{b} = (0, 1)$。

  • 点积:$\mathbf{a} \cdot \mathbf{b} = \begin{pmatrix} 1 & 0 \end{pmatrix} \begin{pmatrix} 1 & 0.5 \newline 0.5 & 1 \end{pmatrix} \begin{pmatrix} 0 \newline 1 \end{pmatrix} = 0.5$
  • 模长:$|\mathbf{a}| = 1, |\mathbf{b}| = 1$
  • 夹角:$\cos \theta = \frac{0.5}{1 \cdot 1} = 0.5 \implies \theta = 60^\circ$

观察

即使坐标看起来是垂直的 $(1,0)$和$(0,1)$,由于度量矩阵的影响,它们实际的几何夹角是 $60^\circ$。


仿射坐标系:点积与夹角的代数解析 (非矩阵形式)

几何背景

在标准直角坐标系中,基向量互相垂直且模长为 1。但在仿射坐标系中,基向量 $\mathbf{e}_1, \mathbf{e}_2$的夹角为$\omega$,模长分别为 $L_1$和$L_2$。我们不再使用矩阵,而是通过向量分解余弦定理来推导。


1. 向量的分解

设有两个向量 $\mathbf{A}$和$\mathbf{B}$,它们在仿射基底 $\lbrace \mathbf{e}_1, \mathbf{e}_2\rbrace $下的坐标分别为$(a_1, a_2)$和$(b_1, b_2)$: $$\mathbf{A} = a_1 \mathbf{e}_1 + a_2 \mathbf{e}_2$$ $$\mathbf{B} = b_1 \mathbf{e}_1 + b_2 \mathbf{e}_2$$


2. 点积 (Dot Product) 的代数展开

根据点积的分配律(Distributive Law),我们可以将 $\mathbf{A} \cdot \mathbf{B}$ 展开为四项:

$$\begin{aligned} \mathbf{A} \cdot \mathbf{B} &= (a_1 \mathbf{e}_1 + a_2 \mathbf{e}_2) \cdot (b_1 \mathbf{e}_1 + b_2 \mathbf{e}_2) \newline &= a_1 b_1 (\mathbf{e}_1 \cdot \mathbf{e}_1) + a_2 b_2 (\mathbf{e}_2 \cdot \mathbf{e}_2) + a_1 b_2 (\mathbf{e}_1 \cdot \mathbf{e}_2) + a_2 b_1 (\mathbf{e}_2 \cdot \mathbf{e}_1) \end{aligned}$$

利用基向量的几何性质:

  • $\mathbf{e}_1 \cdot \mathbf{e}_1 = L_1^2$
  • $\mathbf{e}_2 \cdot \mathbf{e}_2 = L_2^2$
  • $\mathbf{e}_1 \cdot \mathbf{e}_2 = \mathbf{e}_2 \cdot \mathbf{e}_1 = L_1 L_2 \cos \omega$

最终表达式

$$\mathbf{A} \cdot \mathbf{B} = a_1 b_1 L_1^2 + a_2 b_2 L_2^2 + (a_1 b_2 + a_2 b_1) L_1 L_2 \cos \omega$$

观察

若 $\omega = 90^\circ$且$L_1=L_2=1$,上式即缩退为标准公式 $a_1 b_1 + a_2 b_2$。中间多出来的 $(a_1 b_2 + a_2 b_1) L_1 L_2 \cos \omega$ 项正是由于坐标轴倾斜产生的修正项。


3. 模长 (Norm) 的计算

向量 $\mathbf{A}$的模长$|\mathbf{A}|$ 即自身点积的平方根: $$|\mathbf{A}| = \sqrt{\mathbf{A} \cdot \mathbf{A}}$$

代入点积公式(此时 $b_i = a_i$): $$|\mathbf{A}| = \sqrt{a_1^2 L_1^2 + a_2^2 L_2^2 + 2 a_1 a_2 L_1 L_2 \cos \omega}$$

关联

这本质上就是广义余弦定理在坐标空间中的体现。


4. 夹角 $\theta$ 的表达形式

设向量 $\mathbf{A}$与$\mathbf{B}$的夹角为$\theta$,根据定义: $$\cos \theta = \frac{\mathbf{A} \cdot \mathbf{B}}{|\mathbf{A}| \cdot |\mathbf{B}|}$$

将上述代数式全部代入,得到纯三角函数形式:

$$\cos \theta = \frac{a_1 b_1 L_1^2 + a_2 b_2 L_2^2 + (a_1 b_2 + a_2 b_1) L_1 L_2 \cos \omega}{\sqrt{a_1^2 L_1^2 + a_2^2 L_2^2 + 2 a_1 a_2 L_1 L_2 \cos \omega} \cdot \sqrt{b_1^2 L_1^2 + b_2^2 L_2^2 + 2 b_1 b_2 L_1 L_2 \cos \omega}}$$


5. 详细例题

设定条件:

  • 基向量夹角 $\omega = 120^\circ$(钝角坐标系)。
  • 单位长度相等 $L_1 = L_2 = 1$。
  • 向量 $\mathbf{A} = (1, 1)$,向量 $\mathbf{B} = (1, 0)$。

计算步骤:

  1. 计算 $\cos \omega$: $$\cos 120^\circ = -0.5$$

  2. 计算点积 $\mathbf{A} \cdot \mathbf{B}$: $$\mathbf{A} \cdot \mathbf{B} = (1 \cdot 1) \cdot 1^2 + (1 \cdot 0) \cdot 1^2 + (1 \cdot 0 + 1 \cdot 1) \cdot 1 \cdot 1 \cdot (-0.5)$$ $$\mathbf{A} \cdot \mathbf{B} = 1 + 0 + (1 \cdot -0.5) = 0.5$$

  3. 计算各自模长

    • $|\mathbf{B}| = \sqrt{1^2 + 0 + 0} = 1$
    • $|\mathbf{A}| = \sqrt{1^2 + 1^2 + 2 \cdot 1 \cdot 1 \cdot (-0.5)} = \sqrt{2 - 1} = 1$
  4. 计算夹角 $\theta$: $$\cos \theta = \frac{0.5}{1 \cdot 1} = 0.5 \implies \theta = 60^\circ$$

几何结论

在 $120^\circ$的坐标系中,坐标为$(1,1)$的向量与坐标轴$(1,0)$的实际几何夹角是$60^\circ$。


晶系中键角的确定与计算

核心概念

在晶体学中,键角(Bond Angle)是指从同一个原子出发的两条化学键之间的夹角。它不仅取决于原子的相对坐标,还受到晶胞参数(边长 $a, b, c$和晶胞角$\alpha, \beta, \gamma$)的约束。


1. 实验确定:衍射分析

在实际科学研究中,键角不是直接测量的,而是通过以下步骤“还原”出来的:

  1. X射线衍射 (XRD):获取晶体的衍射图谱。
  2. 结构精修:通过 Fourier 合成确定每个原子在晶胞中的分数坐标 $(x, y, z)$。
  3. 几何重建:利用晶胞参数将分数坐标转换为空间位置,进而计算键角。

2. 理论计算:基于仿射坐标系的推导

设中心原子 $O$位于原点,与其相连的两个原子为$A$和$B$。 向量 $\vec{OA}$和$\vec{OB}$ 在晶体坐标系(仿射系)下的分数坐标分别为:

  • $\mathbf{u} = (x_1, y_1, z_1)$
  • $\mathbf{v} = (x_2, y_2, z_2)$

2.1 晶量度张量 (Metric Tensor of Crystal)

为了处理非正交性,我们引入晶体学度量矩阵 $G$: $$G = \begin{pmatrix} a^2 & ab\cos\gamma & ac\cos\beta \newline ab\cos\gamma & b^2 & bc\cos\alpha \newline ac\cos\beta & bc\cos\alpha & c^2 \end{pmatrix}$$ 其中 $a, b, c$ 为晶格常数,$\alpha, \beta, \gamma$ 为晶胞角度。

2.2 键角计算公式

键角 $\theta$ 的余弦值由下式给出: $$\cos \theta = \frac{\mathbf{u}^T G \mathbf{v}}{\sqrt{(\mathbf{u}^T G \mathbf{u})(\mathbf{v}^T G \mathbf{v})}}$$

代数展开形式

如果不使用矩阵,分子(点积)展开为: $$\begin{aligned} \text{Dot} = \ &x_1 x_2 a^2 + y_1 y_2 b^2 + z_1 z_2 c^2 \newline &+ (x_1 y_2 + x_2 y_1) ab \cos \gamma \newline &+ (x_1 z_2 + x_2 z_1) ac \cos \beta \newline &+ (y_1 z_2 + y_2 z_1) bc \cos \alpha \end{aligned}$$ 分母则是两个向量各自模长的乘积(模长计算公式见上一篇笔记)。


3. 不同晶系的简化情况

根据晶体对称性的不同,公式可以极大简化:

晶系约束条件键角计算特征
立方晶系$a=b=c, \alpha=\beta=\gamma=90^\circ$回归标准笛卡尔公式:$\frac{\sum x_i y_i}{\sqrt{\sum x_i^2} \sqrt{\sum y_i^2}}$
四方/长方$\alpha=\beta=\gamma=90^\circ$交叉项全为 0,仅保留平方项权值:$x_1 x_2 a^2 + y_1 y_2 b^2 + z_1 z_2 c^2$
单斜晶系$\alpha=\gamma=90^\circ, \beta \neq 90^\circ$仅保留包含$\cos \beta$ 的修正项

4. 实例:金刚石(立方晶系)中的键角计算

场景:在立方晶胞中,中心原子位于 $(\frac{1}{4}, \frac{1}{4}, \frac{1}{4})$,两个相邻原子分别位于 $(0, 0, 0)$和$(\frac{1}{2}, \frac{1}{2}, 0)$。

  1. 定义向量

    • $\vec{u} = (0 - \frac{1}{4}, 0 - \frac{1}{4}, 0 - \frac{1}{4}) = (-\frac{1}{4}, -\frac{1}{4}, -\frac{1}{4})$
    • $\vec{v} = (\frac{1}{2} - \frac{1}{4}, \frac{1}{2} - \frac{1}{4}, 0 - \frac{1}{4}) = (\frac{1}{4}, \frac{1}{4}, -\frac{1}{4})$
  2. 计算点积(由于是立方晶系,$a=b=c$,设 $a=1$): $$\mathbf{u} \cdot \mathbf{v} = (-\frac{1}{4})(\frac{1}{4}) + (-\frac{1}{4})(\frac{1}{4}) + (-\frac{1}{4})(-\frac{1}{4}) = -\frac{1}{16} - \frac{1}{16} + \frac{1}{16} = -\frac{1}{16}$$

  3. 计算模长

    • $|\mathbf{u}| = \sqrt{3 \times (\frac{1}{4})^2} = \frac{\sqrt{3}}{4}$
    • $|\mathbf{v}| = \sqrt{3 \times (\frac{1}{4})^2} = \frac{\sqrt{3}}{4}$
  4. 求角度: $$\cos \theta = \frac{-1/16}{(\sqrt{3}/4) \times (\sqrt{3}/4)} = \frac{-1/16}{3/16} = -\frac{1}{3}$$ $$\theta = \arccos(-1/3) \approx 109.47^\circ$$

结论

这正是经典的正四面体键角


相关链接:

基于 Obsidian 整理 · 由 VitePress 构建