《量子化学软件基础》习题(2)

2022-12-07 14:54:45 浏览数 (2)

习 题

1. 自己构造一个既含有π电子也包含孤对电子的体系。计算分子的MP2/cc-pVTZ能量,并在BDF(ORCA)中产生MP2的自然轨道。用软件绘制π轨道和孤对电子轨道。如果无法得到具有孤对轨道特征的轨道,则使用局域HF轨道(Boys 或者PM均可)。

2. 分别在 BDF、ORCA和Gaussian中使用对称性、不使用对称性计算C60分子,比较计算效率和结果。

参考解答

习题1:

(1) 构建了乙烯胺分子,使用BDF在RHF/cc-pVTZ水平下对该分子结构进行优化。【小编注:HF优化结构仅为练习使用,实际计算中一般用DFT方法】

(2) 产生MP2 自然轨道的输入文件如下。

① BDF的输入文件:

代码语言:javascript复制
$compass
title
c2h5n mp2
basis
cc-pvtz
geometry
file=c2h5n.xyz
end geometry
saorb
nosymm
$end

$xuanyuan
$end

$scf
RHF
$end

$traint
TDDFT
orbital
hforb
$end

$mp2
nature
molden
$end

注:在计算MP2时要写入Nature和Molden关键词,其作用分别为计算密度矩阵并输出自然轨道以及输出自然轨道为molden格式的文件。此处TDDFT关键词只是借用其积分变换功能,产生分子轨道积分供后续MP2使用,并非真的进行TDDFT计算。

② ORCA的输入文件:

代码语言:javascript复制
!RHF MP2 cc-pVTZ
! NoFrozenCore
%mp2
density unrelaxed #or density relaxed
natorbs true
end
*xyzfile 0 1 c2h5n.xyz

注:在计算MP2时要写入Density和NatOrbs关键词。其中关键词Density可以构造成两种类型的密度矩阵:relaxed(弛豫)和unrelaxed(非弛豫)。由于MP2波函数不是变分的,两种密度是有差别的。弛豫密度考虑了轨道响应,一般用于计算MP2偶极矩、解析导数等。但若将这种密度用于生成自然轨道,会出现轨道占据数超出[0,2]的无物理意义情形。非弛豫密度没有考虑轨道响应,可以看做是弛豫密度的近似,将这种密度用于生成自然轨道不会有占据数超出[0,2]的情形。尽管占据数有所区别,但在轨道形状上,可以认为两种密度对应的自然轨道差别较小,不影响观看和定性判断。关键词natorbs会将密度矩阵对角化得到Natural orbitals,最终的轨道会存储在JobName.mp2nat(GBW类型的文件),此文件内波函数可以作为其他计算的初猜轨道 (例如,从MP2自然轨道出发进行CASSCF计算)。

③ 使用Multiwfn绘制其π轨道:

(3) 正则HF轨道以及MP2的自然轨道中,都没有明显孤对电子轨道。所以,需要使用局域轨道才能构造出N原子上的孤对轨道。本文使用的是Pipek-Mezey(PM)局域化方法。PM方法能够保持σ和π轨道分离,而另一种常用的Foster-Boys方法会将σ和π轨道混合。为了更好地观察轨道和孤对轨道,我们选用PM局域化方法。

① BDF的输入文件:

代码语言:javascript复制
$compass
title
c2h5n loc
basis
cc-pvtz
geometry
file=c2h5n.xyz
end geometry
$end

$xuanyuan
$end

$scf
RHF
$end

$localmo
Pipek
Nolmovir
$end

注:在BDF中使用该局域化方法需在输入文件中使用LOCALMO模块,并在该模块中使用关键词Pipek和Nolmovir,Pipek用于指定使用Pipek-Mezey 局域化方法,Nolmovir用来指定只局域化占据轨道。BDF做局域化默认将占据轨道、虚轨道都进行局域化,本题局域化的目的是得到具有孤对电子特征的轨道,而孤对电子位于占据轨道,因此只局域化占据轨道即可。并且由输出文件(图1)可知BDF局域化占据轨道包括core轨道。

图1 局域化轨道范围1-12

② ORCA做局域化有两种方法,第一种方法:在输入文件中加入loc模块,这种方法默认只局域化占据轨道,与在loc模块加入Occ true关键词后的计算结果相同,若想局域化虚轨道需在loc模块加入Virt true关键词。对于本题目,孤对电子位于占据轨道,因此默认情况即可。输入文件:

代码语言:javascript复制
!RHF cc-pVTZ pal8
%loc
LocMet PM
end
*xyzfile 0 1 c2h5n.xyz

在输出文件(图2)中可以看到这种方法局域化占据轨道时是不包括core轨道的,定位的轨道范围为3-11。

图2 局域化轨道范围3-11

由于在BDF局域化占据轨道时是包括core轨道的,为对比两种软件的计算结果,这里使用第二种方法:调用orca_loc程序局域化的方法,通过设置orbital window来指定局域化轨道范围。输入文件:

代码语言:javascript复制
orca_01.gbw #input orbitals
orca_01.loc.gbw #output orbitals
0 #orbital window: first orbital to be localized e.g. first active
11 #orbital window: last orbital to be localized e.g. last active
1 #localization method
0 # operator: 0 for alpha, 1 for beta
128  #maximum number of iterations
1e-6 # convergence tolerance of the localization functional value
0.0   #relative convergence tolerance of the localization functional value
0.95 # printing thresh to call an orbital strongly localized
0.85  #printing thresh to call an orbital bond-like
2  #printlevel
1 # use Cholesky Decomposition (0=false, 1=true)
1 # randomize seed for localization (0=false, 1=true)

将以上内容保存为myloc.inp,运行

orca_loc myloc.inp

即可进行局域化,得到的轨道写入orca_01.loc.gbw文件中。orca_loc的具体用法参见ORCA手册。

此时从输出(图3)中可以看到局域化的轨道范围为0-11。

图3 局域化轨道范围0-11

③ 使用Multiwfn绘制的π轨道和孤对电子轨道如下:

习题2:

分别使用BDF、ORCA和某斯三种软件在RHF/cc-pVDZ水平下(均采用8核并行计算),使用/不使用对称性计算C60分子单点能的结果总结如下。

由上表可知,BDF使用对称性后计算效率提高约81.4倍,“某斯”使用对称性后计算效率提高约13.5倍,而ORCA使用对称性与否对计算效率影响不大。其原因在于使用对称性进行计算时:BDF不仅可以识别到I(h)点群,在实际计算中也是用了I(h)点群,因此在三种软件中可以最大程度的提高计算效率;Gaussian只能处理阿贝尔群,虽然也能识别到I(h)点群,但在计算时是以C(2h)来计算的,因此提高计算效率的程度不如BDF;ORCA也可以识别到I(h)点群,但在实际计算过程中并没有使用对称性降低计算量,因此计算效率并没有提高。

0 人点赞