贡献者: addis
相比于 “氢原子球坐标薛定谔方程数值解”,这里使用张量积空间,更数学。
总波函数在球谐基底上展开(我们把 $(l,m)$ 按一定顺序排序后的序号记为 $\lambda$)
\begin{equation}
\Psi( \boldsymbol{\mathbf{r}} , t) = \sum_\lambda \left\lvert \psi_\lambda(t) \right\rangle \otimes \left\lvert Y_\lambda( \hat{\boldsymbol{\mathbf{r}}} ) \right\rangle ~.
\end{equation}
哈密顿算符为
\begin{equation}
H = H_0 + V_F(t) = K_r\otimes I + \frac{1}{2r^2}\otimes L^2 + V(r) \otimes I + V_F(t)~.
\end{equation}
耦合方程组为
\begin{equation}
\sum_{\lambda'} \left\langle \lambda \middle| H \middle| \lambda' \right\rangle \left\lvert \psi_{\lambda'}(t) \right\rangle = - \mathrm{i} \frac{\partial}{\partial{t}} \left\lvert \psi_\lambda(t) \right\rangle ~.
\end{equation}
其中每个矩阵元 $ \left\langle \lambda \middle| H \middle| \lambda' \right\rangle $ 都是一个关于 $r$ 空间的算符(张量空间的算符如果关于一个小空间的基底求矩阵元,那么每个矩阵元都会是另一个小空间中的算符)。
无外场的哈密顿算符的 $ \left\langle \lambda \middle| H_0 \middle| \lambda' \right\rangle $ 将会是对角的,即每个 $\psi_{\lambda}(r, t)$ 都会独立传播,传播子为 $ \exp\left(- \mathrm{i} \left\langle \lambda \middle| H \middle| \lambda \right\rangle \Delta t\right) $。
1. 算符拆分(split operators)
无论用什么传播算法,传播子总可以记为 $ \exp\left(- \mathrm{i} H \Delta t\right) $,这里近似 $\Delta t$ 内 $H$ 不随时间变化。如果 $H$ 可以拆分为几个算符之和(式 2 ),$ \exp\left(- \mathrm{i} H \Delta t\right) $ 不一定能拆分成几个传播子的乘积(因为这些项不互相对易),但 $\Delta t$ 很小时会近似成立。
一种精度比较高的拆分方法是将不含外场(field free)的 $H_0$ 和含外场的 $V_F$ 分开传播
\begin{equation}
\exp\left(- \mathrm{i} H\Delta t\right) = \exp\left(- \mathrm{i} H_0\frac{\Delta t}{2}\right) \exp\left(- \mathrm{i} V_F\Delta t\right) \exp\left(- \mathrm{i} H_0\frac{\Delta t}{2}\right) + \mathcal{O}\left(\Delta t^3 \right) ~.
\end{equation}
由于 $ \left\langle \lambda \middle| H_0 \middle| \lambda' \right\rangle $ 都是对角的,根据
式 3 ,$ \exp\left(- \mathrm{i} H_0 \Delta t/2\right) $ 作用在总波函数上其实就相当于 $ \exp\left(- \mathrm{i} \left\langle \lambda \middle| H_0 \middle| \lambda \right\rangle \Delta t\right) $ 分别作用在每个 $\psi_{\lambda}(r)$ 上。
2. 线偏振外场
在长度规范下,如果有只延 $z$ 方向的外场,那么
\begin{equation}
V_F(t) = \boldsymbol{\mathbf{\mathcal E}} (t) \boldsymbol\cdot \boldsymbol{\mathbf{r}} = \mathcal E(t) z = \mathcal E(t) r \otimes Y_{10}( \hat{\boldsymbol{\mathbf{r}}} )~,
\end{equation}
所以矩阵元为
\begin{equation}
\left\langle \lambda \middle| V_F(t) \middle| \lambda' \right\rangle = \mathcal E(t) r \left\langle \lambda \middle| Y_{10} \middle| \lambda' \right\rangle ~.
\end{equation}
如果我们在 $r$ 空间中取类似 $\delta(r - r_i)$ 的基底 $ \left\lvert r_i \right\rangle $(例如等间距基底或 FEDVR 基底),那么 $V_F$ 也会有一个很好的性质就是它们可以表示为 $r$ 空间的对角矩阵(矩阵元为 $r_i$)和角向空间中的一个算符(矩阵)的张量积。
与式 1 相反,将总波函以不同径向基底拆分成若干个角向波函数
\begin{equation}
\Psi( \boldsymbol{\mathbf{r}} , t) = \sum_i \left\lvert r_i \right\rangle \otimes f_i( \hat{\boldsymbol{\mathbf{r}}} )~.
\end{equation}
将 $V_F$ 作用在总波函数上得
\begin{equation}
(r \otimes Y_{10})\sum_i \left\lvert r_i \right\rangle \otimes f_i( \hat{\boldsymbol{\mathbf{r}}} )
= \sum_i r_i \left\lvert r_i \right\rangle \otimes [Y_{10} f_i( \hat{\boldsymbol{\mathbf{r}}} )]~,
\end{equation}
所以我们只需要对每个 $f_i( \hat{\boldsymbol{\mathbf{r}}} )$ 使用传播子 $ \exp\left[- \mathrm{i} (r_i Y_{10}) \Delta t\right] $ 进行传播即可。容易证明
\begin{equation}
\exp\left(\sum_i \left\lvert i \right\rangle \left\langle i \right\rvert \otimes \hat{B} _i\right) = \prod_i \left\lvert i \right\rangle \left\langle i \right\rvert \otimes \mathrm{e} ^{ \hat{B} _i}~,
\end{equation}
\begin{equation}
\exp\left(\sum_i \hat{A} _i \otimes \left\lvert i \right\rangle \left\langle i \right\rvert \right) = \prod_i \mathrm{e} ^{ \hat{B} _i} \otimes \left\lvert i \right\rangle \left\langle i \right\rvert ~.
\end{equation}
3. 选择定则起到的作用
在对每个 $f_i( \hat{\boldsymbol{\mathbf{r}}} )$ 使用传播子 $ \exp\left[- \mathrm{i} (r_i Y_{10}) \Delta t\right] $ 的时候,由于 expokit 只需要用户提供矩阵 $ \left\langle \lambda \middle| Y_{10} \middle| \lambda' \right\rangle $ 与列矢量相乘的 implementation。如果知道选择定则,即那些矩阵元为 0,我们就可以使用 sparse matrix 与列矢量的乘法从而提高计算效率。
例如对于线偏振光,只选取 $m = 0$ 的基底,选择定则要求 $\Delta l = \pm 1$,$ \left\langle \lambda \middle| Y_{10} \middle| \lambda' \right\rangle $ 只是一个三对角矩阵且对角元为 0。
选择定则对于氢原子其实并没有太大的性能提升,因为实践表明两个径向传播子 $ \exp\left(- \mathrm{i} H_0 \Delta t/2\right) $ 的传播才是最耗时的。而对于氦原子,使用选择定则可能有更明显的优势。
4. 平均能量
\begin{equation}
\left\langle E \right\rangle = \sum_{l,m} \int \psi^*_{l,m}(r) \left[-\frac{1}{2m} \frac{\mathrm{d}^{2}}{\mathrm{d}{r}^{2}} + V(r) + \frac{l(l+1)}{2mr^2} \right] \psi_{l,m}(r) \,\mathrm{d}{r} ~.
\end{equation}