0%

格林函数计算表面态

本文讲述了前面求解表面格林函数之后对于表面态和体态的计算,主要关注第一种迭代方法的计算

选择一边开边界,一边周期性边界的哈密顿量通过迭代求解格林函数 GG,利用格林函数就可以计算哈密顿量对应的边界态,并且可以选择开边界方向。

边界态计算

通过之前对格林函数的求解,可以参考:

https://zhangpu-git.github.io/2025/03/11/green-1/

其中

α1=H01(ωH00)1H01β1=H01(ωH00)1H01εs=H00+H01(ωH00)1H01ε1=H00+H01(ωH00)1H01+H01(ωH00)1H01\begin{aligned} \alpha_1 &= H_{01}(\omega - H_{00})^{-1}H_{01} \\ \beta_1 &= H_{01}^{\dagger}(\omega - H_{00})^{-1}H_{01}^{\dagger} \\ \varepsilon^s &= H_{00}+H_{01}(\omega - H_{00})^{-1}H_{01}^{\dagger} \\ \varepsilon_1 &= H_{00}+H_{01}(\omega - H_{00})^{-1}H_{01}^{\dagger}+H_{01}^{\dagger}(\omega - H_{00})^{-1}H_{01} \end{aligned}

参数的迭代关系为:

αi=αi1(ωεi1)1αi1βi=βi1(ωεi1)1βi1εi=εi1+αi1(ωεi1)1βi1+βi1(ωεi1)1αi1εis=εi1s+αi1(ωεi1)1βi1\begin{aligned} \alpha_{i}&=\alpha_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\alpha_{i - 1}\\ \beta_{i}&=\beta_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\beta_{i - 1}\\ \varepsilon_{i}&=\varepsilon_{i - 1}+\alpha_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\beta_{i - 1}+\beta_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\alpha_{i - 1}\\ \varepsilon_{i}^s&=\varepsilon_{i - 1}^s+\alpha_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\beta_{i - 1} \end{aligned}

选择合适的迭代次数i

(ωεis)G00=IG00=(ωεis)1\begin{aligned} (\omega - \varepsilon_{i}^{s})G_{00} = I\\ G_{00} = (\omega - \varepsilon_{i}^{s})^{-1} \end{aligned}

得到谱密度,也就是边界态。

A(k,ω)=Im[log(Gs(ω,k))]/πA(k,\omega)=-\mathrm{Im}[\log(G^s(\omega,k))]/\pi

将得到的A(k,ω)A(k,\omega)按照 k,ωk,\omega画成2D图就是边界态,这里的 ω\omega可以写为能量 EE

边界方向的选择

不同的开边界方向对于哈密顿量来说可以表示为

(H00H0100H01H00H0100H01H00H0100H01H00)(H00H0100H01H00H0100H01H00H0100H01H00)\begin{gathered}\begin{pmatrix}H_{00}&H_{01}&0&0&\cdots\\H_{01}^\dagger&H_{00}&H_{01}&0&\cdots\\0&H_{01}^\dagger&H_{00}&H_{01}&\cdots\\0&0&H_{01}^\dagger&H_{00}&\cdots\\\vdots&\vdots&\vdots&\vdots&\ddots\end{pmatrix}\to\begin{pmatrix}H_{00}&H_{01}^\dagger&0&0&\cdots\\H_{01}&H_{00}&H_{01}^\dagger&0&\cdots\\0&H_{01}&H_{00}&H_{01}^\dagger&\cdots\\0&0&H_{01}&H_{00}&\cdots\\\vdots&\vdots&\vdots&\vdots&\ddots\end{pmatrix}\end{gathered}

在计算时为方便不需要重新定义哈密顿量,可以直接修改迭代关系

εs=H00+H01(ωH00)1H01H00+H01(ωH00)1H01\varepsilon^s = H_{00}+H_{01}(\omega - H_{00})^{-1}H_{01}^{\dagger}\to H_{00}+H_{01}^{\dagger}(\omega - H_{00})^{-1}H_{01}

εis=εi1s+αi1(ωεi1)1βi1εi1s+βi1(ωεi1)1αi1\varepsilon_{i}^s=\varepsilon_{i - 1}^s+\alpha_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\beta_{i - 1}\to \varepsilon_{i - 1}^s+\beta_{i - 1}(\omega - \varepsilon_{i - 1})^{-1}\alpha_{i - 1}

就得到了另一个方向的边界态。

其他说明

体态

表面态的计算使用的是

Gsurf=(ωεis)1G_{surf} = (\omega - \varepsilon_{i}^{s})^{-1}

其中 εis\varepsilon_{i}^{s}描述的是表面的格林函数,而之前定义的 εi\varepsilon_{i}就可以视为描述的体态的格林函数

Gbulk=(ωεi)1G_{bulk} = (\omega - \varepsilon_{i})^{-1}

递推矩阵

递推矩阵方法求解格林函数只关注了表面格林函数,因此使用该方法不方便计算体态,修改开放边界方向也需要在原本的哈密顿量上修改,因此使用第一种方法计算边界态更方便。