3. Skeleton 导数与 U 导数概述
我们曾经介绍过,对分子梯度 (分子力,向量或矩阵) 的导数是 Hessian。这就是矩阵导数的一个例子。它就是这一节的讨论的矩阵全导数的一个例子。但我们曾经计算的是数值梯度。
从今之后,我们的目标是求取解析梯度。数值梯度也是重要的,但它的意义在于验证解析梯度的正确性。
显然,我们如果要求取分子梯度性质,就需要对能量或一些矩阵作全导数计算。所谓全导数,就是一般意义下的导数。但为了化简计算或对计算分项作分类,我们会引入新的用语,称为 Skeleton 导数 (原子轨道矩阵导数)。
记号说明
我们重新强调一些记号:
上下标 \(A, B, M\):原子;对于双氧水,可以是两个氢、两个氧原子中的任意一个;
三维向量 \(\boldsymbol{A}, \boldsymbol{B}, \boldsymbol{M}\):原子三维笛卡尔坐标;
三维向量 \(\boldsymbol{r}\):电子坐标;
下标 \(t, s, r, w\):三维笛卡尔坐标分量,取值范围 \(\{ x, y, z \}\);
上标或标量 \(A_t, B_s\):原子坐标的坐标分量;
标量 \(r\):线段长度,譬如 \(r_{AB}\) 表示原子 \(A\) 到 \(B\) 的距离;
电荷标量 \(Z_A\):\(A\) 原子的核电荷数;
函数或格点 \(\phi\):作为函数的原子轨道。
一些常用下标如下:
下标 \(\mu, \nu, \kappa, \lambda\) 表示原子轨道角标,在程序中用
u, v, k, l
表示;下标 \(i, j, k, l\) 表示占据分子轨道角标;
下标 \(a, b, c\) 表示非占分子轨道角标;
下标 \(p, q, r, s, m\) 表示任意轨道角标。
记号更变说明
记号 \(\partial_\mathbb{A}\) 代表对变量 \(\mathbb{A}\) 求偏导数,等价于 \(\frac{\partial}{\partial \mathbb{A}}\)。该符号用于行内或简化表达式。
在 pyxdh 的早期版本中将导数分为 Skeleton 与 U 导数,并且使用 \(\partial_\mathbb{A}\) 代表 Skeleton 导数,\(\partial_\mathbb{A}^\mathrm{U}\) 代表 U 导数;而 \(\frac{\partial}{\partial \mathbb{A}}\) 才是一般意义的偏导数。现在的 pyxdh 文档决定废弃这种符号,因为这种符号可能导致很多歧义。
这是对可能的以前看过该文档的读着说明的;如果读着没有看过早期的 pyxdh 文档并且不能理解上一段的意义,请无视之。
补充记号说明
上角标或普通数值 \(\mathbb{A}, \mathbb{B}\):任意被求导量,可以是原子核坐标分量或电荷坐标分量。
我们拿 Hamiltonian Core 举例。我们称 Hamiltonian Core 矩阵在被求导量 \(\mathbb{A}\) 下的导数为 Skeleton 导数:
但我们也很经常处理分子轨道下的 Hamiltonian Core 矩阵。对于这类矩阵,我们定义 Skeleton 导数为
事实上,分子轨道下的 Hamiltonian Core 矩阵的全导数包含对分子轨道的导数项:
因此,Skeleton 的意义是,在一个矩阵的全导数中,去除其与分子轨道导数有关的量。我们依据下式定义 U 矩阵 \(U_{mp}^\mathbb{A}\) (Yamaguchi, p398, G.1)
那么,上面的分子轨道下 Hamiltonian Core 矩阵全导数可以写为
上式只有第一项是 Skeleton 导数。我们以后经常称后两项为 U 导数。
任务 (1)
证明上一个等式。
因此,Skeleton 导数也可以视作不产生 U 矩阵的导数。以后我们经常会遇到 Skeleton 导数,其符号也类似于 \(h_{pq}^\mathbb{A}\),但存在例外。因此,作者决定每次出现新的符号时都额外作一次定义。
关于 U 矩阵,其中一个相当重要的性质是:
一个重要的特性是,U 矩阵一般是普通矩阵,而非通常量化中所看到的对称矩阵。因为这个特性,我们在处理 U 矩阵的对称性时需要小心。
任务 (2)
在任务 (1) 所被证明的对于 Hamiltonian Core 成立的等式,套用到重叠矩阵也同样成立。请说明上式成立。
3.1. 任务参考答案
3.1.1. 任务 (1)
我们将 \(\partial_\mathbb{A} C_{\mu p}\) 的定义式代入 \(\partial_\mathbb{A} h_{pq}\) 的导出式中,得到
3.1.2. 任务 (2)
我们知道
但同时,根据定义,
因此,分子轨道下的重叠矩阵是严格的单位矩阵,对任何物理量的导数为零,即
因此,上式化为