计算化学公社

 找回密码 Forget password
 注册 Register

求助一下libcint库算双电子积分和pyscf给出结果不一致的问题

查看数: 2657 | 评论数: 4 | 收藏 Add to favorites 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-7-2 13:22

正文摘要:

本帖最后由 海棠 于 2022-7-2 13:30 编辑 这个是我自己编写低效率Obara-Saika方案双电子积分的结果: i=  1 j=  1 k=  1 l=  1 int=  0.165539885177D+01 i ...

回复 Reply

海棠 发表于 Post on 2022-7-2 15:35:48
本帖最后由 海棠 于 2022-7-2 15:45 编辑
hebrewsnabla 发表于 2022-7-2 14:16
并不是这样,至少env的前二十个数是不能随便动的,见这里sunqm的讨论 https://github.com/sunqm/libcint/ ...

非常感谢!把前20个元素空出来之后得到了合理结果。
hebrewsnabla 发表于 Post on 2022-7-2 14:18:55
海棠 发表于 2022-7-2 13:34
另外,我使用libcint库只能是编译出libcint.so libcint.so.5 libcint.so.5.1.3三个文件后自行移动到/usr/li ...

无关
hebrewsnabla 发表于 Post on 2022-7-2 14:16:39
本帖最后由 hebrewsnabla 于 2022-7-2 14:18 编辑
这些信息在env数组的位置应当由数组atm和bas指定,它们哪个在前面哪个在后面本应该没有影响才对啊?

并不是这样,至少env的前二十个数是不能随便动的,见这里sunqm的讨论 https://github.com/sunqm/libcint/issues/70

不过,我觉得并不一定是这个问题导致的。pyscf生成env的时候实际上对基组做了归一化,见 https://github.com/pyscf/pyscf/blob/master/pyscf/gto/mole.py 的 make_bas_env 函数。如果你没有做,那结果自然和pyscf的不同。

如果你想和pyscf一致,那必须仔细阅读pyscf生成env的代码。但是,不一致也没有关系,你这样写也是能用的。

海棠 发表于 Post on 2022-7-2 13:34:05
另外,我使用libcint库只能是编译出libcint.so libcint.so.5 libcint.so.5.1.3三个文件后自行移动到/usr/lib/里才能使用,使用ifort -L命令没有效果。不知道上述错误是否和我没有正常链接动态库有关?

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-2-20 05:18 , Processed in 0.204629 second(s), 25 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list