目录

FDE方法计算分子间电子、空穴转移,相关在位能site energy、激发能Excitation energy的计算

本教程试用AMS2020.101完成。

FDE方法之所以更精确,因为它考虑到了两个分子之间由于电子、空穴的转移,引起的各自的电子态的弛豫(因此,在两次带电的FDE计算过程中,计算了几次单点,这实际上是一个弛豫过程:冻结A的密度,计算B,然后冻结B的密度计算A……),以及电子/空穴分别在两个分子上,形成的两种态之间的耦合。

激发能:这种方法得到的Excitation Energy也可以对应载流子从一个分子,通过“激发”的方式,跳跃到另一个分子上,所需要的“激发能”。该理论模型下,是将载流子在其中一个分子上,认为是一个总电子态,跳跃到另一个分子上,对应另一个总电子态,两个总电子态的能量差值,即激发能。

下面我们简略地讲一下这个例子。在AMS20*.*\examples\adf\ElectronTransfer_FDE_H2O文件夹内也有这个例子。本例是以水分子之间传递空穴(正电荷)为例(电子的传递,将Charge 1改为charge -1即可)。包括如下几个步骤:

  1. 计算两个中性分子(两个分子可以不相同,也可以相同,本例中是两个水分子)单体;
  2. 计算其中第一个分子带电,第二个分子中性的情况(因为需要手动实现弛豫,因此反复计算了4遍);
  3. 计算其中第一个分子中性,第二个分子带正电的情况(因为需要手动实现弛豫,因此反复计算了4遍);
  4. 计算空穴的传递能力

理论上的参考文献:

M. Pavanello and J. Neugebauer, Modelling charge transfer reactions with the frozen density embedding formalism, Journal of Chemical Physics 135, 234103 (2011)

M. Pavanello, T. Van Voorhis, L. Visscher, and J. Neugebauer, An accurate and linear-scaling method for calculating charge-transfer excitation energies and diabatic couplings, Journal of Chemical Physics 138, 054101 (2013)

注意

一,计算两个中性分子的单体

计算第一个中性单体

#!/bin/sh
 
AMS_JOBNAME=Iso1 $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000        0.0000000000      0.0000000000
     H        -0.9358409558         .2646136961      0.0000000000
     H        -0.0304663436       -0.9828924420      0.0000000000
  end
end
 
Task SinglePoint
 
Engine ADF
  eprint
    sfo NOEIG NOOVL NOORBPOP
  end
  basis
    core None
    type TZP
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 90
  end
  symmetry NOSYM
  title Isolated water molecule 1
  xc
    gga PW91
  end
EndEngine
eor

计算完毕后,请将生成的*.results/adf.rkf文件,重命名为t21.iso.rho1备用。

计算第二个中性单体

#!/bin/sh
 
AMS_JOBNAME=Iso2 $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000       -2.9053396088        0.0000000000
     H        -0.4092227596       -3.3374838250       -0.7701260000
     H        -0.4092227596       -3.3374838250        0.7701260000
  end
end
 
Task SinglePoint
 
Engine ADF
  eprint
    sfo NOEIG NOOVL NOORBPOP
  end
  basis
    core None
    type TZP
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 90
  end
  symmetry NOSYM
  title isolated water molecule 2
  xc
    gga PW91
  end
EndEngine
eor

计算完毕后,请将生成的*.results/adf.rkf文件,重命名为t21.iso.rho2备用。

说明,两个中性分子的计算,除了:

之外,与一般的单点计算相比,实际并没有特别之处。

二,第一个分子带电、第二个分子中性的FDE计算

这个计算分为四个步骤,目的是为了考虑其中一个分子带电后,两个分子电子密度的弛豫。

第一步

将第二个分子设定为FDE区域(也就是作为“环境”),整个系统带电1(实际上就是第一个分子带电,因为第二个分子已经成为环境,不受charge关键词的影响)两个区域读取了前面中性单体的t21文件。

#!/bin/sh
 
AMS_JOBNAME=Emb1 $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000        0.0000000000      0.0000000000   adf.f=rho1
     H        -0.9358409558         .2646136961      0.0000000000   adf.f=rho1
     H        -0.0304663436       -0.9828924420      0.0000000000   adf.f=rho1
     O         0.0000000000       -2.9053396088      0.0000000000   adf.f=rho2
     H        -0.4092227596       -3.3374838250     -0.7701260000   adf.f=rho2
     H        -0.4092227596       -3.3374838250      0.7701260000   adf.f=rho2
  end
  charge 1
end
 
Task SinglePoint
 
Engine ADF
  allow PARTIALSUPERFRAGS
  eprint
    sfo NOEIG NOOVL NOORBPOP
  end
  fde
    ggapotcfd pw91c
    ggapotxfd pw91x
    pw91k
  end
  fragments
     rho1 t21.iso.rho1
     rho2 t21.iso.rho2 type=fde
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 90
  end
  spinpolarization 1
  symmetry NOSYM
  title MODCO: Fragment no.          1; (polarized)
  unrestricted
  xc
    gga PW91
  end
EndEngine
eor

计算结束后,生成的*.results/adf.rkf文件重命名为t21.emb.rho1备用。在理解上,应该明白此时的t21文件实际上是描述第一个分子带电的情况,第二个分子是作为“环境”的,对应的level显示,也只会显示带+1电荷的第一个分子的能级,电子密度等等所有信息,都只记录带+1电荷的第一个分子。

第二步

将带+1电荷的第一个分子设定为FDE区域(也就是作为“环境”),因此整个系统不带电。带+1电荷的第一个分子对应的片段,读取了上一步生成的t21文件“t21.emb.rho1”。

#!/bin/sh
 
AMS_JOBNAME=Emb2 $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000        0.0000000000      0.0000000000   adf.f=rho1
     H        -0.9358409558         .2646136961      0.0000000000   adf.f=rho1
     H        -0.0304663436       -0.9828924420      0.0000000000   adf.f=rho1
     O         0.0000000000       -2.9053396088      0.0000000000   adf.f=rho2
     H        -0.4092227596       -3.3374838250     -0.7701260000   adf.f=rho2
     H        -0.4092227596       -3.3374838250      0.7701260000   adf.f=rho2
  end
end
 
Task SinglePoint
 
Engine ADF
  allow PARTIALSUPERFRAGS
  eprint
    sfo NOEIG NOOVL NOORBPOP
  end
  fde
    ggapotcfd pw91c
    ggapotxfd pw91x
    pw91k
  end
  fragments
     rho1 t21.emb.rho1 subfrag=active type=fde
     rho2 t21.iso.rho2
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 90
  end
  symmetry NOSYM
  title MODCO: Fragment no.          2; (polarized)
  xc
    gga PW91
  end
EndEngine
eor

计算完毕,将*.results/adf.rkf重命名为t21.emb.rho2备用,与上一步类似,此时带+1电荷的第一个分子成了“环境”,主要计算中性的第二个分子的电子态。

第三步

将前一步弛豫过的中性的第二个分子设定为FDE区域(也就是作为“环境”),而第一个分子带+1电荷,因此整个系统带+1电荷。第二个中性分子对应的片段,读取了上一步生成的t21文件“t21.emb.rho2”。

而EngineRestart t21.emb.rho1读取第一步的电子态本身只是为了读取电子态的初始猜测,促进更快收敛而已,因此加不加这一行,对结果没有影响。

#!/bin/sh
 
AMS_JOBNAME=Emb1r $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000        0.0000000000      0.0000000000   adf.f=rho1
     H        -0.9358409558         .2646136961      0.0000000000   adf.f=rho1
     H        -0.0304663436       -0.9828924420      0.0000000000   adf.f=rho1
     O         0.0000000000       -2.9053396088      0.0000000000   adf.f=rho2
     H        -0.4092227596       -3.3374838250     -0.7701260000   adf.f=rho2
     H        -0.4092227596       -3.3374838250      0.7701260000   adf.f=rho2
  end
  charge 1
end
 
Task SinglePoint
 
EngineRestart t21.emb.rho1
 
Engine ADF
  allow PARTIALSUPERFRAGS
  eprint
    sfo NOEIG NOOVL NOORBPOP
  end
  fde
    ggapotcfd pw91c
    ggapotxfd pw91x
    pw91k
  end
  fragments
     rho1 t21.iso.rho1
     rho2 t21.emb.rho2 subfrag=active type=fde
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 90
  end
  spinpolarization 1
  symmetry NOSYM
  title MODCO: Fragment no.          1; relaxed
  unrestricted
  xc
    gga PW91
  end
EndEngine
eor

计算完毕,将*.results/adf.rkf重命名为t21.emb.rho1备用。

第四步

将前一步弛豫过的带+1电荷的第一个分子设定为FDE区域(也就是作为“环境”),而第二个分子为电中性,因此整个系统为电中性。第一个中性分子对应的片段,读取了上一步生成的t21文件“t21.emb.rho1”。

#!/bin/sh
 
AMS_JOBNAME=Emb2r $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000        0.0000000000      0.0000000000   adf.f=rho1
     H        -0.9358409558         .2646136961      0.0000000000   adf.f=rho1
     H        -0.0304663436       -0.9828924420      0.0000000000   adf.f=rho1
     O         0.0000000000       -2.9053396088      0.0000000000   adf.f=rho2
     H        -0.4092227596       -3.3374838250     -0.7701260000   adf.f=rho2
     H        -0.4092227596       -3.3374838250      0.7701260000   adf.f=rho2
  end
end
 
Task SinglePoint
 
Engine ADF
  allow PARTIALSUPERFRAGS
  eprint
    sfo NOEIG NOOVL NOORBPOP
  end
  fde
    ggapotcfd pw91c
    ggapotxfd pw91x
    pw91k
  end
  fragments
     rho1 t21.emb.rho1 subfrag=active type=fde
     rho2 t21.emb.rho2 subfrag=active
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 90
  end
  symmetry NOSYM
  title MODCO: Fragment no.          2; relaxed
  xc
    gga PW91
  end
EndEngine
eor

计算完毕,将*.results/adf.rkf重命名为t21.emb.rho2。我们重新整理一下t21文件名:

说明:

  1. 这里使用FDE方法,得到了精确的第一个分子带电片段(fragA1.t21)、第二分子中性片段的电子结构(fragA2.t21),并考虑了其中一个分子对另一个分子的影响,所发生的电子弛豫
  2. 对于简并能级的体系,用户可以在这里对带电片段,指定占据方式,从而达到限定电子、空穴通过哪个简并轨道进行hopping

三,第一个分子中性、第二个分子带电的计算

本计算与前者类似(具体脚本)。使用FDE方法,得到了精确的第一个分子中性片段(fragB1.t21)、第二分子带电片段的电子结构(fragB2.t21)。类似地,对于简并能级的体系,用户可以在这里对带电片段,指定占据方式,从而达到限定电子、空穴通过哪个简并轨道进行hopping

注意,上面两个计算,分别得到的片段的文件名必须重命名为fragA1.t21、fragA2.t21、fragB1.t21、fragB2.t21。

四,计算空穴转移能力

#!/bin/sh
 
AMS_JOBNAME=ET $AMSBIN/ams <<eor
System
  atoms
     O         0.0000000000        0.0000000000      0.0000000000   adf.f=rho1
     H        -0.9358409558         .2646136961      0.0000000000   adf.f=rho1
     H        -0.0304663436       -0.9828924420      0.0000000000   adf.f=rho1
     O         0.0000000000       -2.9053396088      0.0000000000   adf.f=rho2
     H        -0.4092227596       -3.3374838250     -0.7701260000   adf.f=rho2
     H        -0.4092227596       -3.3374838250      0.7701260000   adf.f=rho2
  end
  charge 1
end
 
Task SinglePoint
 
Engine ADF
  electrontransfer
    numfrag 2
  end
  eprint
    scf NOPOP
    sfo NOEIG NOOVL NOORBPOP
  end
  fragments
     rho1 t21.iso.rho1
     rho2 t21.iso.rho2
  end
  noprint BAS FUNCTIONS
  Relativity Level=None
  numericalquality good
  scf
    iterations 0
  end
  spinpolarization 1
  symmetry nosym
  title ElectronTransfer calculation
  unrestricted
  xc
    gga PW91
  end
EndEngine
eor

注意:

  1. 这一步不支持并行,只能使用单核计算;
  2. 使用了ELECTRONTRANSFER关键词
  3. 取消了自洽迭代过程,设置了SCF次数为0;
  4. 所有计算都设置了nosym;
  5. 调用了第一步中得到的两个中性单体的t21文件;
  6. 虽然脚本不含fragA1.t21等4个文件的名字,但实际使用了这4个文件。

结果查看

在*.logfile尾部,包含计算结果:

 <Aug27-2014> <14:36:30>  ============  Electron Transfer RESULTS ===================
 <Aug27-2014> <14:36:30>  Electronic Coupling =         0.000000 eV
 <Aug27-2014> <14:36:30>  Electronic Coupling =        -0.000006 cm-1
 <Aug27-2014> <14:36:30>  H11-H22             =        -1.396836 eV
 <Aug27-2014> <14:36:30>  Excitation Energy   =         1.396836 eV
 <Aug27-2014> <14:36:30>  Overlap             =         0.000000
 <Aug27-2014> <14:36:30>  H11 H22 H12 =  -152.443044906236  -152.391712133030  -151.743951196449 Eh (这里是原子单位a.u.)
 <Aug27-2014> <14:36:30>  S11 S22 S12 =     0.981761438554     0.980941502465    -0.000000000038
 <Aug27-2014> <14:36:30>
 <Aug27-2014> <14:36:30>  =========== END Electron Transfer RESULTS ================

其中: