计算化学公社

标题: 安利一下LUT-IOTC [打印本页]

作者
Author:
sobereva    时间: 2017-4-11 19:12
标题: 安利一下LUT-IOTC
GAMESS-US从2016版开始支持基于LUT-IOTC的标量全电子相对论计算,是IOTC(等价于无穷阶DKH)的近似,最近用了用,真乃神器
计算TlCl,对Tl用SARC-DKH,对Cl用cc-pVTZ-DK,键长为NIST上查的实验值2.484826埃。泛函用PBE0。没利用对称性,四核并行。

计算的解离能(用电子能量,kcal/mol。耗时为计算TlCl单点的)
非相对论:103.647472282764,耗时22s
RESC:101.194179766793,耗时43s
DKH2:101.318529597819,耗时42s
DKH3:101.327972179406 ,耗时43s
IOTC:101.326816682898,耗时44.8s
LUT-IOTC:101.326621214601,耗时25s
可见LUT-IOTC和IOTC结果一样,精度没有可察觉得到的损失,而耗时大为降低,比非相对论没多花多少时间。和很常用的精度较理想的DKH3的结果也基本没区别。

更重要的是,LUT-IOTC有解析梯度(而IOTC没有),优化结果:
非相对论:2.5078577,耗时2min
RESC:2.5005100,耗时3min47.330s
DKH2:2.5077723,耗时4min4
DKH3:2.5052602,耗时4min13
IOTC:2.5060618,耗时6m2.843s
LUT-IOTC:2.5067128,耗时2min14
PS:g09下def2-TZVP下优化结果2.5031
确实速度远快于IOTC,也比半数值梯度的DKH速度明显快得多,也比同样有解析梯度的RESC要快不少且结果更好,结果和DKH3/IOTC几乎没区别。LUT-IOTC的速度优势对于大体系会更明显。

LUT-IOTC使用也颇简单,$CONTRL里写个RELWFN=LUT-IOTC即可。

推荐大家使用。附一篇有关文献
(, 下载次数 Times of downloads: 50)


作者
Author:
ggdh    时间: 2017-4-11 22:05
sob有没有博文讲了什么应该应该用标量全电子相对论计算,什么时候应该用赝势?
作者
Author:
sobereva    时间: 2017-4-11 22:33
ggdh 发表于 2017-4-11 22:05
sob有没有博文讲了什么应该应该用标量全电子相对论计算,什么时候应该用赝势?


一般来说,除了算与核有关的属性(超精细耦合、NMR、内核电子激发等),或者做波函数分析牵扯到内核轨道、内核密度外,全都可以用赝势
这里有相关讨论
在赝势下做波函数分析的一些说明
http://sobereva.com/156
作者
Author:
chenzhiyong    时间: 2017-10-27 23:18
sob老师好,我最近想用Gamess做一下DK3和IOTC的计算,碰到点问题想请教一下。我在Gamess手册里看到计算DK3的例子(应该是计算ROHF下As的单点,例子在下面),有两个不明白的地方。
   1.首先就是$radial 里面的nshell,idegsh(1),memsh(1)是基于什么基础给出来的?As是第四周期,有d轨道,为什么nshell=2,idegsh(1)=1,3,只考虑s和p轨道,memsh(1)=15, 16,17,18怎么算出来的?
   2.如果是计算分子的话,$radial是不是一定要设?如果是,该怎么设?
$contrl scftyp=rohf mult=4 relwfn=dk ispher=1 $end
$system timlim=2 mwords=2 $end
$relwfn norder=3 $end
$guess  guess=huckel $end
$radial nshell=2 idegsh(1)=1,3 memsh(1)=15, 16,17,18 $end
$data
illustration of 3rd order Douglas-Kroll for As
Dnh 2

Arsenic 33.0
   S 1 ; 1 7.2421890D+07 1.0
   S 1 ; 1 7.7040750D+06 1.0
   S 1 ; 1 1.3365730D+06 1.0
   S 1 ; 1 3.0394350D+05 1.0
   S 1 ; 1 8.3289250D+04 1.0
   S 1 ; 1 2.5994450D+04 1.0
   S 1 ; 1 8.9795770D+03 1.0
   S 1 ; 1 3.3667950D+03 1.0
   S 1 ; 1 1.3464700D+03 1.0
   S 1 ; 1 5.6774580D+02 1.0
   S 1 ; 1 2.4923080D+02 1.0
   S 1 ; 1 1.1199520D+02 1.0
   S 1 ; 1 4.6328140D+01 1.0
   S 1 ; 1 2.2611220D+01 1.0
   S 1 ; 1 1.0910110D+01 1.0
   S 1 ; 1 4.5498340D+00 1.0
   S 1 ; 1 2.1494630D+00 1.0
   S 1 ; 1 1.0337510D+00 1.0
   S 1 ; 1 3.0892460D-01 1.0
   S 1 ; 1 1.1206710D-01 1.0
   P 1 ; 1 4.9515580D+04 1.0
   P 1 ; 1 8.4637830D+03 1.0
   P 1 ; 1 2.2908560D+03 1.0
   P 1 ; 1 7.7965970D+02 1.0
   P 1 ; 1 3.0545690D+02 1.0
   P 1 ; 1 1.3097990D+02 1.0

   P 1 ; 1 5.9698960D+01 1.0
   P 1 ; 1 2.8408790D+01 1.0
   P 1 ; 1 1.3883000D+01 1.0
   P 1 ; 1 6.6102210D+00 1.0
   P 1 ; 1 3.0821260D+00 1.0
   P 1 ; 1 1.3919830D+00 1.0
   P 1 ; 1 4.8254700D-01 1.0
   P 1 ; 1 1.9228260D-01 1.0
   P 1 ; 1 7.2849660D-02 1.0
   D 1 ; 1 7.1896480D+02 1.0
   D 1 ; 1 2.0798400D+02 1.0
   D 1 ; 1 7.9590850D+01 1.0
   D 1 ; 1 3.4514110D+01 1.0
   D 1 ; 1 1.5730540D+01 1.0
   D 1 ; 1 7.2805600D+00 1.0
   D 1 ; 1 3.3000700D+00 1.0
   D 1 ; 1 1.4173160D+00 1.0
   D 1 ; 1 5.4472730D-01 1.0

$end




作者
Author:
sobereva    时间: 2017-10-28 01:28
chenzhiyong 发表于 2017-10-27 23:18
sob老师好,我最近想用Gamess做一下DK3和IOTC的计算,碰到点问题想请教一下。我在Gamess手册里看到计算DK3 ...

radial是计算r、r^2算符期望值的,对这个不感兴趣就完全没必要设,idegsh等等与之相关的也都不必
作者
Author:
chenzhiyong    时间: 2017-10-28 08:49
sobereva 发表于 2017-10-28 01:28
radial是计算r、r^2算符期望值的,对这个不感兴趣就完全没必要设,idegsh等等与之相关的也都不必

好的,非常感谢sob老师
作者
Author:
chenzhiyong    时间: 2017-10-28 17:19
sobereva 发表于 2017-10-28 01:28
radial是计算r、r^2算符期望值的,对这个不感兴趣就完全没必要设,idegsh等等与之相关的也都不必

sob老师,我在Gamess自定义基组的时候出现了以下问题,意思应该是$BASIS模块太长了吗?这个问题有解决方法吗,弄了好久没解决。(附件有输入文件)请sob老师帮忙看看。
CONSTANT LIST TOO LONG
**** ERROR READING INPUT GROUP $BASIS    *****
THE PROBLEM IS WITH THIS INPUT LINE, NEAR THE X MARKER
$BASIS  BASNAM=METAL,LIGC,LIGC,LIGC,LIGC,LIGC,LIGH,LIGH,LIGH,LIGH,LIGH,LIGH,LIG
                           X
THE ONLY KEYWORDS ACCEPTED IN THIS GROUP ARE:
  GBASIS    NGAUSS    NPFUNC    NDFUNC    NFFUNC    DIFFSP
  DIFFS     POLAR     SPLIT2    SPLIT3    EXTFIL    BASNAM
SYNTAX ERROR FOUND IN YOUR $BASIS GROUP
EXECUTION OF GAMESS TERMINATED -ABNORMALLY- AT Sat Oct 28 15:54:11 2017



作者
Author:
sobereva    时间: 2017-10-28 21:14
chenzhiyong 发表于 2017-10-28 17:19
sob老师,我在Gamess自定义基组的时候出现了以下问题,意思应该是$BASIS模块太长了吗?这个问题有解决方 ...

写成类似这样
$BASIS BASNAM(1)=ligH,ligH,ligH,ligH,ligH,ligH,metal,metal,
ligN,ligH,ligH,ligH $END
每一行不要超过80个字符
作者
Author:
chenzhiyong    时间: 2017-10-29 09:00
sobereva 发表于 2017-10-28 21:14
写成类似这样
$BASIS BASNAM(1)=ligH,ligH,ligH,ligH,ligH,ligH,metal,metal,
ligN,ligH,ligH,ligH $ ...

非常感谢sob老师,可以算了,已经在跑了


作者
Author:
chenzhiyong    时间: 2017-10-30 10:11
sobereva 发表于 2017-10-28 21:14
写成类似这样
$BASIS BASNAM(1)=ligH,ligH,ligH,ligH,ligH,ligH,metal,metal,
ligN,ligH,ligH,ligH $ ...

sob老师,我的LUT-IOTC跑出来出现下面的错误,这是计算双电子积分的时候不收敛吗?还是别的原因。求解。附件是输入输出文件。
II,JST,KST,LST =146  1  1  1 NREC =     33721 INTLOC =10511
II,JST,KST,LST =147  1  1  1 NREC =     33721 INTLOC =10511
II,JST,KST,LST =148  1  1  1 NREC =     34573 INTLOC = 9766
II,JST,KST,LST =149  1  1  1 NREC =     35398 INTLOC = 2708
II,JST,KST,LST =150  1  1  1 NREC =     36685 INTLOC = 5016
II,JST,KST,LST =151  1  1  1 NREC =     36852 INTLOC = 3679
II,JST,KST,LS CPU     0: STEP CPU TIME=    91.65 TOTAL CPU TIME=       94.7 (    1.6 MIN)
TOTAL WALL CLOCK TIME=     1128.9 SECONDS, CPU UTILIZATION IS   8.39%
  ddikick.x: application process 0 quit unexpectedly.
PWRT: NODE   2 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE   1 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE   3 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE   5 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE   6 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE   9 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE   7 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE  11 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE  13 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE  12 ENCOUNTERED I/O ERROR WRITING UNIT   8
PWRT: NODE  14 ENCOUNTERED I/O ERROR WRITING UNIT   8
ddikick.x: Sending kill signal to DDI processes.
ddikick.x: Execution terminated due to error(s).
----- accounting info -----
FiSun Oct 29 23:15:33 CST 2017
0.211u 8.460s 19:13.80 0.7%     0+0k 1088+664io 13pf+0w
作者
Author:
sobereva    时间: 2017-10-30 15:29
chenzhiyong 发表于 2017-10-30 10:11
sob老师,我的LUT-IOTC跑出来出现下面的错误,这是计算双电子积分的时候不收敛吗?还是别的原因。求解。 ...

双电子积分没有收敛不收敛之说
提示I/O错误,可能是读写临时文件哟问题,检查下硬盘空间,或者试试小点的基组,或者试试加上$SCF DIRSCF=.T. $END
作者
Author:
chenzhiyong    时间: 2017-10-30 23:00
sobereva 发表于 2017-10-30 15:29
双电子积分没有收敛不收敛之说
提示I/O错误,可能是读写临时文件哟问题,检查下硬盘空间,或者试试小点 ...


sob老师好,我按照您说的换了小基组cc-pvtz-dk,也尝试了加上$SCF DIRSCF=.T. $END,两种情况都正常结束了没报错,但是TOTAL ENERGY = 0,这应该有问题吧。因为我常年用Gaussian,刚学gamess,不懂的地方比较多,请老师海涵。
1.老师说的硬盘空间是指哪里的(我是在节点上算的),是不是指/scr/文件夹所放置的位置?如果是,像gamess在rohf/aug-cc-pvtz-dk水平下用DK3和IOTC方法计算几十个原子的体系需要硬盘空间多大?
2.TOTAL ENERGY = 0是算错了吗?
3.$SCF DIRSCF=.T. $END的作用是不存储积分吗?
附件是输出文件。



作者
Author:
sobereva    时间: 2017-10-31 00:06
chenzhiyong 发表于 2017-10-30 23:00
sob老师好,我按照您说的换了小基组cc-pvtz-dk,也尝试了加上$SCF DIRSCF=.T. $END,两种情况都正常结束了 ...

SCF没收敛
临时文件位置就是GAMESS运行脚本文件里定义的环境变量里面有一项指向的位置
direct SCF时积分用的时候现算,不占硬盘
记得上传较大文本型文件时一定要压缩,置顶的新人必读里有提到
作者
Author:
chenzhiyong    时间: 2017-10-31 08:11
sobereva 发表于 2017-10-31 00:06
SCF没收敛
临时文件位置就是GAMESS运行脚本文件里定义的环境变量里面有一项指向的位置
direct SCF时积 ...

好的,谢谢sob老师
作者
Author:
chenzhiyong    时间: 2017-10-31 11:25
sobereva 发表于 2017-10-31 00:06
SCF没收敛
临时文件位置就是GAMESS运行脚本文件里定义的环境变量里面有一项指向的位置
direct SCF时积 ...

sob老师好,首先非常感谢您对我的问题的即时回答。按照您的解答,我已经能够用小基组成功计算ROHF/LUT-IOTC(或者IOTC和DK3)水平下的SCF能量。大基组正在尝试。
这里还有一个可能无关LUT-IOTC计算的问题,就是今天早上在您说了TOTAL ENERGY = 0是因为SCF不收敛,我自己尝试解决了一下(解决方法是从网上找的)。
1.我把迭代次数加到200,$contrl 模块加上maxit=200。
2. 我在$scf 模块加上ETHRSH=1.0。我看手册里ETHRSH是energy error threshold for initiating DIIS,默认值是0.5。
虽然结果SCF成功收敛了,但我还是不明白ETHRSH的实际意义是什么?我把它从0.5改成1.0代表了什么?这样算出来的结果是可信的吗?

$contrl scftyp=rohf mult=5 relwfn=dk ispher=1 maxit=200 $end
$system mwords=16 $end
$relwfn norder=3 $end
$scf    DIIS=.T. ETHRSH=1.0 DIRSCF=.T. $end
$guess  guess=huckel $end
$basis  BASNAM(1)=ligC,ligC,ligC,ligH,ligH,ligH,
ligN,ligH,ligN,ligH,metal,ligH,ligC,ligH,ligC,ligH,ligH,ligH $end



作者
Author:
sobereva    时间: 2017-11-3 15:47
chenzhiyong 发表于 2017-10-31 11:25
sob老师好,首先非常感谢您对我的问题的即时回答。按照您的解答,我已经能够用小基组成功计算ROHF/LUT-IO ...

GAMESS默认的maxit太小,加大是有益的,但加到200没必要,超过100步还没收敛的趋势继续跑基本也不可能收敛
ETHRSH不影响收敛限,只是影响DIIS加速收敛的具体过程,只要最终观看迭代过程,能量收敛就行了。
作者
Author:
chenzhiyong    时间: 2017-11-3 16:20
sobereva 发表于 2017-11-3 15:47
GAMESS默认的maxit太小,加大是有益的,但加到200没必要,超过100步还没收敛的趋势继续跑基本也不可能收 ...

谢谢老师,您的意思是ETHRSH关键词是可以使用的。但是我在同一个结构下用不同的ETHRSH值给出的结果(SCF能量)相差很大,也就是说体系要在统一的ETHRSH值下才能给出正确的结果。


我还发了个帖子专门问这个问题http://bbs.keinsci.com/forum.php?mod=viewthread&tid=7158&page=1#pid55489,beefly给我的回复是说ETHRSH的性质是和Gaussian使用IOP(5/13=1)是一个性质的,我现在很懵,我该相信谁?

作者
Author:
sobereva    时间: 2017-11-3 16:45
chenzhiyong 发表于 2017-11-3 16:20
谢谢老师,您的意思是ETHRSH关键词是可以使用的。但是我在同一个结构下用不同的ETHRSH值给出 ...


直接看输出文件里的收敛过程判断合理性。也有可能有的没有收敛最稳定波函数。
作者
Author:
chenzhiyong    时间: 2017-11-4 09:34
sobereva 发表于 2017-11-3 16:45
直接看输出文件里的收敛过程判断合理性。也有可能有的没有收敛最稳定波函数。

OK,明白了,再次感谢sob大神。




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3