加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

高斯量化计算总结

(2012-08-02 14:15:21)
标签:

杂谈

分类: Gaussian

关于自旋多重度

定义: 多重度=2S+1, S=n*1/2,n为单电子数。所以,关键是单电子的数目是多少。

当有偶数个电子时,例如 O2,共有16个电子,那么单电子数目可能是0,即8alpha8beta电子配对,对应单重态,但是也可能是有9α电子和7β电子,那么能成对的是7对,还剩2α没有配对,于是n=2,对应的是多重度3。同理还可以有多重度579 ...一般而言,是多重度低的能量低,最稳定,所以,一般来说,偶数电子的体系多重度就是1。但是也有例外,例如O2就是一个大家都知道的例子,它的基态是三重态,其单重态反而是激发态。所以对于未知的体系,还是算几个保险一点,看哪个能量更低。

所以,总结一下,就是

电子数目是偶数,未成对电子数目n=0,2,4,6,...自旋多重度是1,3,5,7,...
电子数目是奇数,未成对电子数目n=1,3,5,7,...自旋多重度是2,4,6,8,...
多数情况是多重度低的能量低,有时(特别是有性的时候,例如顺磁的O2,以及Fe啊什么的),可能会高多重度的能量低,所以需要都算算,看哪个能量更低。
关于赝势:

简单来说,赝势就是不计算内层电子,而是把内层电子的贡献用一个势来描述,放在哈密顿里面。适用于重元素。

赝势基组,实际上包括 赝势和基组两个部分,内层电子采用赝势,即effective core potential (ECP),外层价电子采用一般的基组。 比如:
LanL2DZ: D95V on first row, Los Alamos ECP plus DZ on Na-Bi.
就是对第一行原子是 D95V (这个是非赝势基组),对Na-Bi是使用一个叫做Los Alamos的有效核势加上一个DZ基组。所以Lanl2dz就是对前面的原子全电子基组,对后面的原子是赝势基组。 (再次说明,量化里面,CO那一行,算周期表的第一行)

使用赝势的3个原因:
1
。没有相应的全电子基组。
2
。减少计算量。
3
。赝势可以包含重金属相对论效应的修正。

在高斯中,lanl2dz基组,在手册中可以查到其定义为:
LanL2DZ: D95V on first row , Los Alamos ECP plus DZ on Na-Bi
,也就是说,对于CO等元素来说(量化中,H大概算第0周期,CO才是第一周期),Lanl2dz实际上还是全电子基组,而对于Na以后才是对内层电子用Los Alamos ECP赝势,外层电子用DZ 基组。

使用赝势的输入文件:

1.
所有原子使用lanl2dz
--------------------------
#HF/lanl2dz opt

lanl2dz for all atoms

 2
 0.0 0.0 0.0
 0.0 0.0 1.2
Cu 0.0 0.0 3.2

--------------------------

2.
所有原子使用lanl2dz的另一种输入方法。
--------------------------
#HF/genecp opt

lanl2dz for all atoms

 2
 0.0 0.0 0.0
 0.0 0.0 1.2
Cu 0.0 0.0 3.2

C O 0
lanl2dz
****
Cu 0
lanl2dz    //
定义价电子的基组, C O 0 是碳,氧,零,其中零用作终止符号。
****

Cu 0
lanl2dz   //
定义内层电子的赝势

--------------------------

3.
混和基组,即有的使用全电子,有的使用Lanl2dz。格式同2
--------------------------
#HF/genecp opt

lanl2dz for Cu, 6-31G(d) for C and O

 2
 0.0 0.0 0.0
 0.0 0.0 1.2
Cu 0.0 0.0 3.2

C O 0
6-31G(d)   //
另一种全电子基组
****
Cu 0
lanl2dz    //
定义价电子的基组
****

Cu 0
lanl2dz   //
定义内层电子的赝势

--------------------------
开壳层和闭壳层

闭壳层计算就是对于多重度是1的体系,此时αβ的电子数目相同,可以把αβ配对,成对的αβ使用同一个轨道,一个轨道上填充2个电子。
开壳层计算就是对αβ电子分别计算,一个轨道上只填充1个电子,一般来说,多重度是1时,开壳层计算和闭壳层计算会给出相同的结果。
限制开壳层计算是对多重度大于1的体系,此时αβ的电子数目不同,设有mαnβ电子,m>n,那么让前n个轨道上每个填充一个α和一个β,剩下的m-nα电子再填充m-n个轨道。即前n个轨道是闭的(每个轨道2个电子),后m-n个轨道是开的(每个轨道1个电子)

在高斯中,以HF为例,闭、开、限制开壳层计算分别是RHFUHFROHF。如果只写HF,则按下面的方式取默认方法:
对多重度是1的体系,默认为RHF,对多重度大于1的体系,默认是UHF
关于收敛问题 (L502, L508, L9999)

对于一个优化计算,它的过程是先做一个SCF计算,得到这个构型下的能量,然后优化构型,再做SCF,然后再优化构型。。。因此,会有两种不收敛的情况:一是在某一步的SCF不收敛(L502错误),或者构型优化没有找到最后结果(L9999错误)。

预备知识:计算时保存chk文件,可以在后续计算中使用guess=read读初始猜测.

对于SCF不收敛,通常有以下的解决方法:
1.
使用小基组,或低级算法计算,得到scf收敛的波函数,用guess=read读初始波函数。
2.
使用scf=qc,这个计算会慢,而且需要用stable关键字来测试结果是否波函数稳定。如果这个还不收敛,会提示L508错误。
3.
改变键长,一般是缩小一点,有时会有用。
4.
计算相同体系的其他电子态,比如相应的阴离子、阳离子体系或单重态体系,得到的收敛波函数作为初始猜测进行计算。
5.
待补充.

对于优化不收敛,L9999错误,实际上是在规定的步数内没有完成优化,即还没有找到极小值点。(或者对于过渡态优化,还没有找到过渡态)

这有几种可能性:
1.
看一下能量的收敛的情况,可能正在单调减小,眼看有收敛的趋势,这样的情况下,只要加大循环的步数(opt(maxcycle=200)),可能就可以解决问题了。
2.
加大循环步数还不能解决的(循环步数有人说超过200再不收敛,再加也不会有用了,这虽然不一定绝对正确,但200步应该也差不多了),有两种可能。一是查看能量,发现能量在振荡了,且变化已经很小了,这时可能重新算一下,或者构型稍微变一下,继续优化,就可以得到收敛的结果(当然也有麻烦的,看运气和经验了);二是构型变化太大,和你预计的差别过大,这很可能是你的初始构型太差了,优化不知道到哪里去了,这时最好检查一下初始构型,再从头优化。
3.
对于L9999快达到收敛时,考虑减小优化步长有时对于能量振荡的情况也是有用的,opt(maxstep=1).(flyingheart )

一个建议是,对于大体系,难收敛体系,先用小基组,低精度算法优化一下,以得到较好的初始构型,再用高精度的计算接着算。如果前面的方法保留了chk文件,重新计算时需要使用 geom=allcheck 读入构型(就不必麻烦地写构型了), guess=read(读入初始波函数,可以加快第一步SCF收敛)。
关于对称性:


刚刚在zixia上看到zhuoliu的大作。结合自己以前知道的东西,总结一下。

1
gaussian中输入什么对称性,一般优化的结果仍然还是那个对称性,比如CO2,如果初始两个CO键长输入不是完全相等(比如一个1.214,一个1.215),那么程序就会判断为C∞v 对称,那么优化结果虽然键长几乎相等,但仍然认为是C∞v ,这个从振动频率或者分子轨道对称性上可以看出来。--我们知道,CO2实际上是直线的两边对称的构型,其对称性应该是D∞v 。因此,为了得到高的对称性,必须输入的时候,精确地输入数值,比如sqrt(2),就要保留很多的小数点,180.0角,就不能写成179.9

2
。有时计算过程中对称性会变化,比如做过渡态的时候,这时需要用 IOP(2/16=3),否则计算会出错退出。

3
。比如用直角坐标输入一个正三角形构型,其对称性应该是D3h,但是如果输入的小数点后面的数字不够多,那么常常得到的是C2v或其它。为了消除输入文件中坐标的有效位数的影响,得到较高的对称性,可以降低对称性判断的严格性。一般可以用symm=loose,这等价于 IOP (2/17=4, 2/18=3)。还可以减小这43这两个数值,使得更加loose,但不能过小,否则会出错。symm=loose只是在第一步判断输入构型的对称性时用到。
此外,也可以用gaussview来调整设置初始构型的对称性。

4
。如果要降低对称性,那么可以用symm(PG=C3v)等等来做。使判断出来的对称性为C3v的一个子群。即由PG来限制最高对称性。

附用到的IOP的详细解释。

IOp(2/16)
action taken if the point group changes during an optimization. IOP(2/16=0)Abort the job. IOP(2/16=1)Keep going. IOP(2/16=2)Keep going and leave symmetry on, using the old symmetry. IOP(2/16=3)Keep going and leave symmetry on, using the new symmetry

IOp(17)
Tolerance for distance comparisons in symmetry determination.
 Default (determined in the symmetry package, currently 1.d-8).
N>0  10-N.
N<0 10N, use the same tolerance for orientation.

IOp(18)
Tolerance for non-distance comparisons in symmetry determination.
 Default (determined in the symmetry package, currently 1.d-7).
N>0  10 -N.
N<0  10 N, use the same tolerance for orientation.

supi
附加一个我的:有时候分子对称性太高经常无法优化收敛,这时可以加一个nosymm,有时挺管用的。


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有