本文介绍了半无限体系的表面格林函数,半无限体系哈密顿量呈块三对角形式,推迟格林函数为(ω+iη−H)GR=I,因关注表面格林函数G00对大矩阵求逆困难,故介绍了两种迭代求解方法。
半无限体系
半无限体系指系统在一个方向上延伸到无穷远,而在另一个方向上有边界(表面)。
对于半无限体系,其哈密顿量通常可以写成块三对角(block tridiagonal)的形式:
H=⎝⎜⎜⎜⎜⎜⎜⎛H00H01†00⋮H01H00H01†0⋮0H01H00H01†⋮00H01H00⋮⋯⋯⋯⋯⋱⎠⎟⎟⎟⎟⎟⎟⎞
H00表示单一层的哈密顿量(例如一层原子的内部耦合),H01表示相邻层之间的跃迁矩阵,这里只考虑最近邻。
推迟格林函数为 (ω+iη−H)GR=I, 可写成:
GR=⎝⎜⎜⎜⎜⎜⎜⎛ω+iη−H00−H01†00⋮−H01ω+iη−H00−H01†0⋮0−H01ω+iη−H00−H01†⋮00−H01ω+iη−H00⋮⋯⋯⋯⋯⋱⎠⎟⎟⎟⎟⎟⎟⎞−1
我们只关注表面格林函数即GR(1,1),对于如此大矩阵求逆是很困难的。
快速迭代求解
⎝⎜⎜⎜⎜⎛ω−H00−H01†−H01ω−H00−H01†−H01ω−H00⋮⋯⋱⎠⎟⎟⎟⎟⎞⎝⎜⎜⎜⎜⎛G00G10G20⋮G01G11G21⋮G02G12G22⋮⋯⋯⋯⋱⎠⎟⎟⎟⎟⎞=I
因为只关注GR(1,1)也就是G00,
⎝⎜⎜⎜⎜⎛ω−H00−H01†−H01ω−H00−H01†−H01ω−H00⋮⋯⋱⎠⎟⎟⎟⎟⎞⎝⎜⎜⎜⎜⎛G00G10G20⋮⎠⎟⎟⎟⎟⎞=⎝⎜⎜⎜⎜⎛I00⋮⎠⎟⎟⎟⎟⎞
有如下关系:
(ω−H00)G00=I+H01G10(ω−H00)G10=H01†G00+H01G20⋮(ω−H00)Gn0=H01†Gn−1,0+H01Gn+1,0
最后可得如下关系:
G2n,0=(ω−H00)−1(H01†G2n−1,0+H01G2n+1,0)
当 n>0时:
[ω−H00−H01(ω−H00)−1H01†−H01†(ω−H00)−1H01]G2n,0=H01†(ω−H00)−1H01†G2n−2,0+H01(ω−H00)−1H01G2n+2,0
当 n=0时:
[ω−H00−H01(ω−H00)−1H01†]G00=I+H01(ω−H00)−1H01†G20
将因子重新写为:
α1β1εsε1=H01(ω−H00)−1H01=H01†(ω−H00)−1H01†=H00+H01(ω−H00)−1H01†=H00+H01(ω−H00)−1H01†+H01†(ω−H00)−1H01
参数的迭代关系为:
αiβiεiεis=αi−1(ω−εi−1)−1αi−1=βi−1(ω−εi−1)−1βi−1=εi−1+αi−1(ω−εi−1)−1βi−1+βi−1(ω−εi−1)−1αi−1=εi−1s+αi−1(ω−εi−1)−1βi−1
α和 β将逐渐减小, 取截断可以得到:
得到
(ω−εs)G00(ω−ε1)G2n,0=I+α1G20=β1G2n−2,0+α1G2n+2,0
迭代关系为
(ω−εis)G00(ω−εi)G2i,0=I+αiG2i,0=βiG2i(n−1),0+αiG2i(n+1),0
选择合适的迭代次数i
(ω−εis)G00=IG00=(ω−εis)−1
递推矩阵
对于格林函数矩阵
⎝⎜⎜⎜⎜⎛ω−H00−H01†−H01ω−H00−H01†−H01ω−H00⋮⋯⋱⎠⎟⎟⎟⎟⎞⎝⎜⎜⎜⎜⎛G00G10G20⋮⎠⎟⎟⎟⎟⎞=⎝⎜⎜⎜⎜⎛I00⋮⎠⎟⎟⎟⎟⎞
将矩阵乘开可以看到矩阵每一行的格式都是类似的
第一行
(ω−H00)G00=I+H01G10
第n行
(ω−H00)Gn0=H01†Gn−1,0+H01Gn+1,0
写成递推矩阵
(Gn+1,0Gn,0)=(H01−1(ωI−H00)I−H01−1H100)(Gn,0Gn−1,0)
实际上就是转移矩阵T不断幂运算,格林函数的物理意义是两个点的关联程度,而当n不断变大的时候它与第一列的关联程度越来越低,最后一定趋于0,那也就是说右边那个矩阵的幂也是趋于0的,等于说G0是由T的特征值小于1的特征向量构成的,
假设T的特征值小于1的特征向量表示为(S1S2),写成 (G1,0G0,0)=(S1S2)A。
得到
(ωI−H00)G00−H01G10=IG10=S1S2−1G00
化简就是
G00=(ωI−H00−H01S1S2−1)−1
我们假设 G10=γ1G00 ,上面的式子很容易得到 G00
G00=(ωI−H00−H01γ1)−1
这里的 γ1实际上就是刚才的 S1S2−1。
于是我们只要求解γ1就行了,然后继续假设 G20=γ1G00 ,很快能得到
γ1=g1H10+g1H01γ2
其中g1=(ωI−H00)−1
继续假设 Gn0=γnG00最终
γ2=g2H10g1H10+g2H01γ3γ3=g3H10g2H10g1H10+g3H01γ4γ4=g4H01g3H10g2H10g1H10+g4H01γ5⋅⋅⋅
可以令γn=0,然后一层层带入得到 γ1,就可以得到 G00。