理论计算干货:COOP和COHP简单原理

  • A+

   参考书:Roald Hoffman-Solids and Surfaces_ A Chemist’s View of Bonding in Extended Structures (1988)


参考文献:

J. Phys. Chem. 1993, 97, 8617-8624

J. Phys. Chem. A 2011, 115, 5461-5466

J. Comput. Chem. 2016, 37, 1030-1035


COOP


晶体轨道重叠布居 COOP(crystal orbital overlap population)的一个更为直观的名称是 重叠布居权重的态密度 (overlap population-weighted density of states)

对于两个孤立的H原子的原子轨道可以用H原子的1s轨道基函数表示:


 

而两个氢原子靠近的时候,产生的分子轨道可以写成原子轨道线性组合的形式:

Φ= c1χ1+c2χ2Φ = c1χ1+c2χ2


对于任何的分子轨道波函数的线性展开:

Φ= c1χ1+c2χ2…Φ = c1χ1+c2χ2… 


假定展开基归一化但是不正交,此分子轨道中的电子分布由波函数的平方给出,因此:

1= °∣Φ2∣dτ = °|c1χ1+c2χ2|2dτ = c12+c22+2c1c2S12 

其中S12是重叠积分。上式表示分子轨道波函数中的一个电子是怎样分布的。


c12代表分配到中心1上的部分,c22表示分配到中心 2 上的部分,2c1c2S12 是个和相互作用有关的量,称为重叠布局(overlap population)。(补充内容:按照 mulliken 的划分方法,把重叠布局等分到两个中心上的原子电荷是 mulliken 电荷, mulliken 电荷是最简单的一种原子电荷。第一性原理计算中常用的原子电荷是 Bader 电荷,一种基于盆分析的原子电荷。)


如果 c1c同号,则重叠布居为正值(即成键),如果 c1c异号,则它为负值(即反键)。
重叠布居乘以相应的态密度,就可以得到重叠布居权重的态密度,简称 COOP。

对 COOP 费米能级以下部分的积分值 ICOOP 可以理解为两个原子之间共享的成键电子的数目。在一定程度上可以反映出键强度的大小。


例一:一维氢原子链的 DOS 和 COOP:

计算当中我们需要指定两个原子,计算这两个原子之间的 COOP,例如对于一维的氢原子链,

当 k = 0 时(能带底端),相邻原子的波函数相位相同,COOP 为正值;

k = pi/a 时(能带顶端),相邻原子的波函数相位相反,COOP 为负值。

k = pi/2a 时(能带中间),重叠积分为 0,COOP 为 0。


 

例二:N2分子的 DOS 和 COOP:

 

 

例三:过渡金属的 COOP:

projected COOP (pCOOP) 和 pDOS 一样,同样可以对原子或者原子轨道做投影过渡金属的 d-band 比较局域,而 s 和 p-band 比较弥散,所以,金属中相邻的金属元素做 COOP 计算,不同轨道的贡献范围有所不同,就导致总的 COOP 的成键和反键区域来回折返的情况:


 

COHP


COOP 可以很好的研究周期性体系中的局域化学键性质,在上个世纪配合 semiempirical extended Huckel (EH) theory 取得了巨大的成功。

但是 COOP 还是存在一些问题:
COOP 计算有很强的基组依赖性;在EH的理论框架下,如果研究 p-p 和 d-d 相互作用,由于原子轨道的空间延展方向,会有一定问题。


随着基于平面波基组的第一性原理计算的发展,COHP 方法诞生,在 1993 年由 Richard Dronskowski 和 Peter E.Blochl 共同发表。


Richard Dronskowski 就是我们之后要介绍的 lobster 程序的开发团队 leader。


COHP 的原理在 Richard1993 的文章中有详细的推导。简化来说就是把 COOP 中的重叠布居矩阵用哈密顿矩阵代替。

对于一个波函数,用 LCAO 写成原子轨道线性组合的形式:

R代表原子,L代表原子轨道,j代表能带(分子轨道),


哈密顿矩阵元的形式:


矩阵可以写成如下形式:


 

COHP 和 COOP 的区别就是把原本的重叠矩阵替换成了哈密顿矩阵。同样要乘以一个DOS 矩阵。所以,
COOP is weighted by the elements of the overlap matrix

COHP is weighted by the elements of the Hamiltonian matrix


再把该矩阵拆分成不同原子/轨道之间的贡献。原子对组成的矩阵的对角元属于原子的贡献(R = R’),这一部分我们不关心。

非对角元是原子之间的共价成分的贡献,分为成键贡献(即这一项使得总能降低),和反键贡献(即这一部分使得总能上升)。而且由于 N(ε) 是能量分辨的。所以和 COOP 一样,COHP 可以画出类似的图像。


COHP 处理平面波基组波函数


最初的 COHP 只能处理以原子为中心基函数的波函数,流行方法是 linear muffin-tin orbital (LMTO) 或者 Tight-Binding LMTO (TB-LMTO),这种方法基于中心化的局域基组,不适用与平面波基组。直到 2011 年 Richard Dronskowski 才发表一种将平面波基组投影到局域化的基组上的方法,并且开发了 Lobster 程序,用于处理 VASP,QE,Abinit 等平面波基组的波函数。


具体的方法就是把平面波的波函数近似的写成原子轨道线性组合的形式,是 k 点,是能带


构建一个转换矩阵(transfer matrix),这个转换矩阵的矩阵元就近似的等于 LCAO 的系数。从而就可以构建投影密度矩阵,原本的哈密顿矩阵元就可以写成这个”转换矩阵”和能带能量相乘的形式。而后带回到原本的 COHP 公式里就可以得到适用于周期性体系的COHP 方法。(具体看 Dronskowski2011年文章)

 


Lobster


龙虾程序是 Hoffmann 的学生 Richard Dronskowski 教授开发的。
取名的原因是由于表示波函数的希腊字母ψ和龙虾很像。所以程序的图标也设计成了龙虾的样子。

程序主页:http://www.cohp.de/
目前最新版 Lobster 是 3.1.0
支持 Linux,windows,Mac OS X 系统,一般我们计算完 VASP 会直接在服务器上处理COHP 计算,所以用 linux 版即可。
Lobster 程序和手册,常见问题都可以在官网上得到。不需要编译安装,可以直接使用。


实例一:金刚石

由于,COHP 在 COOP 的基础上引入了能量项,对于能量为负值的贡献是成键态,对于能量为正值的贡献是反键态,所以为了和 COOP 的计算结果看起来左右统一,一般在文章里看到的图都是 -COHP,即右边的峰是成键贡献,左边的峰是反键贡献。用 LMTO 和VASP 算出来的结果非常接近,对于金刚石,所有的占据态都是成键成分,所有的反键态都是反键成分。

 




weinxin
我的微信
关注我了解更多内容

发表评论

目前评论:3