Gaussian中有用的IOp一览

Gaussian中有用的IOp一览
文/Sobereva(2)
First release: 2011-FEB-2  Last update: 2015-Dec-8


Gaussian中IOp极多,包含了控制程序运行的几乎全部信息,IOp的介绍可参考笔者的《Gaussian的Link、IOp与非标准计算路径》(http://sobereva.com/57)。大部分重要、常用的IOp都可以直接通过相应关键词控制,由于关键词明显更容易记忆,这类IOp我很不建议通过编号输入(比如总有人非要把pop=full写成IOp(6/7=3)),基本不会出现在本文,但其中有个别经常在输入文件中看到,为了方便对照也列出来。有少部分有用或很有用的IOp在Gaussian中并没有直接提供对应的关键词,这样的IOp我在本文进行了总结,其中打星号的特别重要,是应当熟悉的。这里主要是解释每条IOp的要点,并不完整,与官方提供的相应IOp说明也并不相同,使用时建议同时查阅官方的解释(http://www.gaussian.com/g_tech/g_iops/iops2.pdf),有个别的IOp在官方文档是查不到的。Gaussian版本不同,IOp信息也会发生一定改变,本文以Gaussian09为依据。


*IOp(1/7=N) 设定优化时的收敛限。力的RMS收敛限设定为N*10^-6(即Threshold显示的值),最大受力被设为1.5*N*10^-6。RMS位移会设为4*N*10^-6 bohr,最大位移会被设为6*N*10^-6 bohr。
*IOp(1/8=N) 在优化的时候以N*0.01 bohr/弧度为最初置信半径,如果优化中不动态更新置信半径,则每一步步长都不会大于这个值(并非是必须等于这个值)。减小其数值有助于解决收敛震荡问题,如果势能面平缓,则应当加大以加快优化速度。默认是30。等价于opt关键词中maxstep选项。
 IOp(1/9=x) 设定对置信半径的处理。默认对于寻找极小点会每步自动更新置信半径,对于过渡态寻找则不会。=1代表不更新,=2代表更新,对应opt中NoTrustUpdate和TrustUpdate关键词。当步长超过置信半径时处理方法用10和20来选择,10代表将位移向量乘以刻度因子使其模等于置信半径(对寻找过渡态是默认的),20代表在置信半径对应的超球面上寻找能量极小点(对寻找极小点是默认的)。
*IOp(1/11=x) =1即noeigentest关键词,=2为总是测试势能面曲率符号,错了就停止任务,即eigentest关键词。默认对LST/QST方法找过渡态及寻找极小点不测试,对Z矩阵或笛卡尔下TS任务进行检测。
 IOp(1/39) 控制计算极化率、频率等任务时有限差分的步长,或者IRC的步长。
 IOp(1/40=N) EF方法优化(没有解析导数的方法默认用的优化方法)过程中每N步重新精确计算一次Hessian矩阵,期间只是使用一阶导数更新之前的Hessian矩阵。
 IOp(1/111=N) 设定温度为N/1000 K,若N为负数则为N/1000000 K。
 IOp(1/112=N) 设定压力为N/1000 atm,若N为负数则为N/1000000 atm。
 IOp(2/12=x) 默认是1,仅当距离为0时才报错,即geom=nocrowd。=2是小于0.5埃就报错,即geom=crowd。=3是即便原子间距离为0,L202也不报错,此选项似乎目前不能用。
 IOp(2/14=x) 使用内坐标时,控制是否测试内坐标线性依赖性,默认不做测试。见手册geom=independent。
*IOp(2/15=x) 控制L202对对称性处理的细节。nosymm相当于1。2是仍然将分子弄到标准朝向,但不利用对称性,3是根本不调用处理对称性的模块。4是用较松的标准判断对称性,然后将体系严格地对称化成这种对称性。
*IOp(2/16=x) 如果优化过程中遇到点群改变怎么处理。1是继续走但关了对称性,2是继续走仍使用旧对称性,3是继续走并使用新对称性,4是停止任务。默认是3。
 IOp(2/17=N) 决定对称性时,距离比较的容差为10^-N。
 IOp(2/18=N) 决定对称性时,非距离比较的容差为10^-N。当IOp(2/17=4,2/18=3)时相当于symm=loose。
*IOp(3/10=x) 设定以何种基函数方式储存波函数信息。1000和2000控制是否将指数相同的S和P壳层组合成SP壳层,默认是2000(组合),1000代表分裂开(int=SplitSP关键词)。100000将收缩基组完全去收缩化,即基函数数目将与高斯函数数目一致。
 IOp(3/18=1) 输出赝势信息,和用了GFPrint关键词的效果一样。
*IOp(3/24=1) 1、10、100可以分别以老方式、Gen的输入格式、某种易读的方式输出基组信息。1000输出壳层所属中心坐标。x0000、x00000可以控制输出的基组、密度拟合基组信息是否先做归一化。
 IOp(3/26=11) 控制L311、L314(scf=conventional时会在自洽场迭代前调用)的双电子积分精度,默认是计算到10^-10精度。设为11可以做到尽可能精确。
 IOp(3/27=N) 扔掉数值小于10^-N以下的双电子积分信息,默认N=10。
 IOp(3/29=N) 使单电子积分(L302)的精度做到10^-N,默认是N=13。
*IOp(3/32=2) 避免去除线性相关的基函数。默认是检验重叠矩阵本征值,发现存在线性相关问题就去掉多余基函数。
*IOp(3/33=1) 输出单电子积分、核哈密顿、势能、多极矩/重叠积分矩阵(overlap那项)。=3用标准格式输出双电子积分,=4用debug格式输出双电子积分(对半经验无效)。=5相当于1、3联用,=6相当于1、4联用。(注,要想输出双电子积分,光写这IOp是没用的,还得写extralinks(L316) scf=conventional noraff)
 IOp(3/53=N) 设定ECP积分精度为10^-N,-1则不截断。
*IOp(3/59=N) 与3/32相关,控制扔掉重叠矩阵本征向量的标准为10^-N。
 IOp(3/60=x) 控制对广义收缩基组的正交化和简化处理。-1是不做正交化和简化,默认是2,即做正交化并去掉系数小的GTF。1是正交化并只去除系数为0的GTF,N是做正交化并去除系数小于10^-N的GTF。在Gaussian与其它量化程序计算结果相比较时此选项有用。
 IOp(3/74=x) 设用什么密度泛函,负数都是交换和相关泛函组合好的,包括那些杂化泛函,如-5=B3LYP,-24=O3LYP,-33=X3LYP。0-99以内的都是代表相关泛函,100及以上的都是代表交换泛函,这两个可以任意组合起来,比如402=BLYP。
*IOp(3/76=MMMMMNNNNN) 将HF交换项和DFT交换项按照NNNNN/10000比MMMMM/10000的比例组合。
*IOp(3/77=MMMMMNNNNN) 使LDA和高阶交换泛函按照NNNNN/10000比MMMMM/10000的比例组合。
*IOp(3/78=MMMMMNNNNN) 使LDA和高阶相关泛函按照NNNNN/10000比MMMMM/10000的比例组合。
*IOp(3/86=N) 扔掉角动量量子数>=N的基函数。
*IOp(3/93=1) 设定核电荷用点电荷描述,而Gaussian对标量相对论计算默认用的是s型高斯函数描述,为了与文献比较有时需要设定此项。
 IOp(3/107) 设定短程和长程HF交换项。0时使用标准HF交换项,MMMMMNNNNN时短程用NNNNN/10000的HF交换而长程用MMMMM/10000的HF交换。这两个数对应于输出文件中HFx后面的wShort和wLong。
 IOp(3/108) 设定短程和长程DFT交换项。0时使用标准DFT交换项,MMMMMNNNNN时短程用NNNNN/10000的DFT交换而长程用MMMMM/10000的DFT交换。这两个数对应于输出文件中DFx后面的wShort和wLong。
(注:上面两个选项字面上的意思有点误导性。实际上,将3/107和3/108都设为MMMMM00000,就相当于用了ω参数为MMMMM/10000的范围分离泛函。对GGA加LC-时ω默认是0.47/Bohr,等价于0470000000。wB97X默认是ω=0.3,等价于0300000000,但注意wB97X短程是杂化泛函,其杂化比例有参数另设)
 IOp(3/109) 设定短程和长程DFT相关项。0时使用标准DFT相关项,MMMMMNNNNN时短程用NNNNN/10000的DFT相关而长程用MMMMM/10000的DFT相关。
 IOp(3/111=1) PBC计算一开始额外输出每个晶胞与中心的距离。
 IOp(3/116=x) 具体控制SCF任务的类型,比如限制性、非限制性、实数、复数等问题。
 IOp(3/118=N) 给估计的直接积分任务所需内存量增加N words内存。
 IOp(3/124=1) 不管是什么交换相关泛函,都加上VDW校正项。而默认情况下,只有所用泛函在定义中包括了色散校正项才会加上。
*IOp(3/125=x) 给MP2计算的二阶微扰能(E2)中自旋平行项和自旋相反项贡献设定校正系数,-3是让自旋相反项为0,-2是让自旋平行项为0,-1是让两项都为0(即还原到HF结果)。设为MMMMMNNNNN是自旋平行项与自旋相反项的能量贡献以MMMMM/10000比NNNNN/10000的比例组合,利用这个可以实现比如SCS-MP2,即IOp(3/125=0333312000)。
 IOp(4/6=x) 设定读入的初猜波函数是否做正交归一性检查、正交化和投影。
 IOp(4/11=x) 设置初猜类型、Harris初猜时所用的积分格点设定。
*IOp(4/15=N) 设定初猜时的自旋多重度为N。
 IOp(4/39=N) 设定guess=mix时的角度为Pi/N,默认N=4。
*IOp(4/43=3) 在CASSCF任务中且组态数很多时,使所有组态的信息都输出出来(默认是仅在组态数少的时候才输出)。
 IOp(4/68=N) 设定分子力学优化微迭代的收敛标准为10^-N。
*IOp(5/7=-1) MCSCF中不做迭代只做CI。设为N时SCF和MCSCF最大迭代次数为N次。
 IOp(5/9=1) 使用SCF直接最小化(L503)使密度矩阵收敛到10^-3时切换到普通SCF过程。
*IOp(5/13=1) SCF不收敛时仍继续执行后续任务。默认是0(等价2),不收敛就停。
*IOp(5/14=x) For L502,=1对于RHF任务,迭代结束后以UHF波函数形式记录,对UHF任务起到跳过自旋湮灭的作用(注意得到的密度矩阵将完全错误);=2保存自旋湮灭后的密度矩阵,故波函数分析模块L607使用的波函数将会是自旋湮灭后的;10=在第一次迭代计算完双电子项后结束;=20仅从储存的实空间Fock矩阵重新计算能带结构。
 IOp(5/16=x) For L502,设定SCF中对角化方法。
 IOp(5/17=x) For L510,设定MCSCF中对角化方法,1000=为多参考态MP2生成数据,10000=试图控制根翻转。
*IOp(5/33=x) =1在每次迭代时输出:单电子能量(动能+核吸引势能)、电子间库仑作用能(对于杂化泛函,HF交换能部分完全包含在其中)、DFT交换能和DFT相关能。后三项之和即为电子间总相互作用能。=3在每次迭代后输出核哈密顿矩阵、MO系数、本征值、密度/自旋密度矩阵、Fock矩阵等一大堆矩阵。PBC计算时在最后迭代后还能输出不同k点的晶体轨道能。
 IOp(5/37=N) 每N次迭代完整构成一次Fock矩阵,而不是默认的每20次一次(期间通过增量方法构成Fock矩阵)。-1则不用增量方法构成Fock矩阵。
*IOp(5/38=x) 控制直接SCF过程(每次迭代重算积分)中积分精度。默认=5,允许VarAcc(积分精度可变),=1不允许,=2比当前收敛情况精度高三位小数,=3在最终迭代前用当前收敛情况同样的精度,最终迭代时高两位小数。=4首先收敛到10^-5(这个过程电子积分精度为10^-6),然后再完全收敛到期望精度,=7全精度双电子积分。
 IOp(5/42=N) 为1时在MCSCF模块中对所有轨道做定域化,设为N时只对前N个轨道做定域化。
*IOp(5/70=N) 设定解决SCF收敛问题的分数占据方法(温度展宽)的温度为N。
 IOp(5/75=N)~(5/78=N) 分别设定分数占据涉及的Alpha电子数、Alpha轨道数、Beta电子数、Beta轨道数。
 IOp(5/80)、IOp(5/81)、IOp(5/82) 设定SCF中共轭梯度法的选项,分别设定最大步长、所用方法和最大步数、收敛标准。
 IOp(5/83=N) SCF中DIIS最大子空间维度,默认是20。
 IOp(5/86=x) 设定能量升高时是否降低DIIS子空间维度,何时开启能级移动及能级移动的量。
 IOp(5/102=N) 设CAS-MP2最大组态数是N,默认是1000。
*IOp(5/103=N) 设置IOp(5/33=3)输出的每个k点的占据和非占据轨道数目都为N,默认是5。
*IOp(6/7=3) 输出所有的分子轨道信息,即pop=full。
*IOp(6/8=3) 在L601模块中输出密度矩阵。
*IOp(6/17=x) 设定L602(诸如prop关键词会涉及)计算电场及梯度、静电势属性时包含哪些成分的贡献。=0计算全部贡献,=1只计算原子核的贡献,=2只计算电子的贡献,-N只计算N号壳层的贡献。
 IOp(6/20=x) 设定拟合静电势电荷的方法和元素半径的定义。-1=读入自行设定的拟合点,1000=只拟合重原子电荷,10000只拟合活性原子电荷。
*IOp(6/26=x) 设定L602、L604模块中使用哪种密度,默认是1=总密度,2=Alpha密度(好像程序不认)、3=Beta密度、4=自旋密度。
 IOp(6/27=22) 不仅输出Mulliken电荷,还输出Mulliken键级矩阵,即pop=bonding,实际上只是把Gross布居对角元设成了0而已。此选项数值千位数若是1,可以读入自定义权重而不是均分交叉项来做Mulliken分析。
*IOp(6/33=2) 输出拟合静电势时的点(单位为埃)和每个点的精确静电势(a.u.)。
 IOp(6/35~39、6/53~55) 详细设定aim模块(L609)的任务类型和参数
*IOp(6/41=N) 拟合ESP电荷时每个原子用N个同中心的点层为,默认N=4。
*IOp(6/42=N) 拟合ESP电荷时每单位面积的点为N个,默认N=1。17时每个原子大概用2500个点,对于大分子可以稍微降低这个值以减少计算量。
 IOp(6/65=-1) 做NCS分析时让所有NLMO的贡献都显示出来
 IOp(6/75=x) 输出CM2电荷。Lowdin电荷、Mayer键级也一起输出。x应设为计算波函数所用的理论方法和基组,可以为以下值:
 1 = HF/MIDI!(5D)   
 2 = HF/MIDI!(6D)   
 3 = HF/6-31G*      
 4 = BPW91/MIDI!(5D)
 5 = BPW91/MIDI!(6D)
 6 = B3LYP/MIDI!(5D)
 7 = BPW91/6-31G*   
 8 = HF/6-31+G*     
 9 = HF/cc-pVDZ     
10 = BPW91/DZVP(6D)
11 = AM1            
12 = PM3            
14 = ZINDO/S2     
 IOp(6/76=x) 将L607(NBO模块)的线性依赖判断阈值设为10^-x。默认x=6。
 IOp(6/79=1) 输出Hirshfeld电荷(第一列是Hirshfeld电荷,后三列分别是原子的x/y/z偶极矩(a.u.)),G09可以直接用pop=hirshfeld。g03中必须用6d基函数,否则结果是NaN,g09没这个问题。=3时还利用原子偶极、四极矩计算原子间相互作用能。
*IOp(6/80=1) 输出Lowdin电荷、Mayer键级。
*IOp(6/83=111) 输出每个原子的不同角动量原子轨道的布居数,以及每个分子轨道中各种角动量原子轨道的成分,分子轨道中d、f原子轨道的贡献和及具体组成也会被输出。
*IOp(6/84=-1) 6/83默认只分析占据轨道,此指令让其分析所有轨道。设为N是分析全部占据轨道和N个最低空轨道。
*IOp(7/32=x) 将能量、核坐标、受力、力常数之类的信息输出到scratch/fort.7文件中,可以通过参数设定输出哪些内容,以及什么坐标下、什么格式。
 IOp(7/33=1) 做freq时,输出更多细节信息,如偶极矩导数、极化率导数、振动极化率来自各振动模式的贡献等。
*IOp(7/64=3) 在freq任务中,将振动频率做洛伦兹展宽成为红外光谱x-y数据点,可以导入诸如origin等程序绘制红外光谱图。如果也做了Raman,也会得到Raman光谱x-y数据点。
 IOp(7/90=N) 对大体系只分析最低N个振动模式,此功能似乎目前不能用。
 IOp(8/11=N) 0是默认,当MO系数大于1000,或占据轨道与虚轨道能量小于0.001,或内核-价轨道混合过量时,自动终止任务。1则只输出提示而不终止任务。
 IOp(9/25=x) 控制每一次迭代、或是第一次和最后一次迭代,或是不输出电子对儿对相关能的贡献。
 IOp(9/26=M) 每次使用硬盘储存M个占据轨道的积分变换,对于解决积分变换过程中硬盘不够有帮助,可将M依次设小直到能算。
 IOp(9/26=1) 归一化后HF波函数(微扰波函数除外),即令总波函数的模Norm(A)=1,可参考手册CID关键词。默认只是对参考态HF行列式波函数归一化(Intermediate normalization)。
*IOp(9/28=-1) 在CID/CISD迭代的最后一步把波函数的全部行列式的系数都打印出来。由于用了中间归一化,所以还需要除以NORM(A)才是真正的系数。-3是不输出系数,设为N是输出系数大于0.0001*N的行列式(默认N=1000)。
 IOp(9/30=x) 控制计算单粒子密度矩阵。
 IOp(9/40=x) 对于L906(半直接MP2),=1时MP2使用CASSCF波函数作为参考态,相当于CASSCF任务中同时写上MP2关键词。对于L914(CIS、TDDFT等任务),输出每个激发态信息时将其中组合系数绝对值大于10^-x的行列式输出出来,默认是x=1。
 IOp(9/44=3) 算基态密度以及来自基态的跃迁密度,还计算所有激发态间的跃迁密度。默认是2,只算算基态密度以及来自基态的跃迁密度。1是计算每个激发态密度。这些结果会被填到rwf文件633位置内。
 IOp(9/46=N) Davidson迭代中(在CIS、TDDFT等任务中都会用到),最低N个态系数收敛就宣告迭代阶数,而不是等所有要算的激发态的系数都收敛才结束。
 IOp(9/47=x) Davidson迭代中,=1时不做任何迭代(只用初猜),=2时只做一次迭代后停止。
 IOp(9/76=N) Davidson迭代中最大向量数。
 IOp(11/18=N) 将原子中心基函数下的2PDM(Two-particle-density-matrix)写入rwf文件N号位置里。
*IOp(11/28=x) x为负数:计算指定类型的2PDM。x为正数:指定1PDM、W、2PDM信息分别储存到的rwf文件的x、x+1、x+2位置,默认是626。
 IOp(11/29=x) =1将1PDM从MO转到AO,=10将2PDM从MO转到AO,=100将AO 2PDM根据壳层排序。
*IOp(11/33=3) 输出2PDM。一般结合IOp(11/18=N),计算相应类型的2PDM。
*IOp(99/6=100) 输出.wfn文件,=1100在.wfn中使用自然轨道,=1200/1300连带着磁轨道导数信息。
*IOp(99/13=x) 控制这次调用L9999是否就是整个任务的结束,1=是,2=否,3=回到Link 1。
*IOp(99/18=N) 默认是0,即输出.wfn不包含虚轨道,-1包含所有虚轨道,N输出N个虚轨道。

评论已关闭