计算化学公社

 找回密码 Forget password
 注册 Register
Views: 116|回复 Reply: 2
打印 Print 上一主题 Last thread 下一主题 Next thread

[算法与编程] ORCA的ECP积分是如何归一化的?

[复制链接 Copy URL]

370

帖子

7

威望

3487

eV
积分
3997

Level 5 (御坂)

本帖最后由 Freeman 于 2026-2-12 15:46 编辑

大家好,我想问问ORCA的ECP积分是如何归一化的。

事情的起因是我想实现带ECP的SCF计算,这就要用到ECP积分。我不想自己写ECP积分了,就调了个库libecpint(https://github.com/robashaw/libecpint/)。实现它自带的例子之后,我发现它的结果跟G16算出来的ECP积分不符。问了原作者,他说libecpint的结果符合Molpro和ORCA,之所以不符合G16,大概是因为libecpint并没有对基函数做归一化,但他实在没时间研究这个归一化问题了。

于是我把对于primitive gaussian归一化的contraction coefficient(从libint2得到)喂给了libecpint,发现那些只有一个primitive gaussian的shell对应的矩阵元,libecpint和G16是对得上的,但是多个primitive gaussian的shell仍然对不上。我可以肯定归一化的contraction coefficient没错,因为基于它们实现的DFT格点积分计算的能量都是对的。所以我觉得,可能要做的是另一个层面的归一化,而不单单是primitive gaussian的归一化。鉴于作者说libecpint的结果符合Molpro和ORCA,而Molpro是收费的,我就想问问ORCA对未归一化的ECP积分到底做了什么处理,使得它们可以和密度矩阵缩并并给出正确的能量呢。

非常感谢!!

744

帖子

21

威望

5351

eV
积分
6515

Level 6 (一方通行)

2#
发表于 Post on 4 day ago | 只看该作者 Only view this author
Molpro底层调用Molcas的seward积分代码,你可以下载OpenMolcas的代码看看

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
Freeman + 5 谢谢

查看全部评分 View all ratings

370

帖子

7

威望

3487

eV
积分
3997

Level 5 (御坂)

3#
 楼主 Author| 发表于 Post on 4 day ago | 只看该作者 Only view this author
beefly 发表于 2026-2-12 16:24
Molpro底层调用Molcas的seward积分代码,你可以下载OpenMolcas的代码看看

谢谢提醒。我看到这个代码https://github.com/Molcas/OpenMo ... sorb/fmod1n.F90#L95 ,意思是说先算一个未归一化的重叠矩阵,再以这个矩阵的对角元的倒数平方作为归一化因子。

下一步我就要去libint2那儿提问,如何计算未归一化的重叠矩阵,毕竟libint2给出的直接就是归一化的各种积分了。

评分 Rate

参与人数
Participants 2
eV +6 收起 理由
Reason
SharkYYX2025 + 1 牛!
北大-陶豫 + 5 谢谢分享

查看全部评分 View all ratings

本版积分规则 Credits rule

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

GMT+8, 2026-2-16 15:11 , Processed in 0.362608 second(s), 21 queries , Gzip On.

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