计算化学公社

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

[算法与编程] HF的双电子积分如何存储

[复制链接 Copy URL]

370

帖子

7

威望

3499

eV
积分
4009

Level 6 (一方通行)

请问现在主流的计算化学软件的HF所用的原子轨道间的双电子积分是怎么存储的?
最近在研究libint自带的HF的示例文件(libint2.x.0/tests/hartree-fock/hartree-fock.cc 第195行),发现它似乎并不存储双电子积分,而是每一轮迭代时都重新计算一遍。这样就很浪费计算资源。但是另一方面,双电子积分的个数相当于基组大小^4/8,可能需要很大的空间才能存储。不知道主流计算化学软件是怎么处理这个矛盾的。

1万

帖子

0

威望

9886

eV
积分
22130

Level 6 (一方通行)

2#
发表于 Post on 2021-8-7 00:55:47 | 只看该作者 Only view this author
一般来说,一个程序只有对于小分子才把双电子积分存储到硬盘(称为conventional mode;当内存放得下的时候,也可以放在内存里),对于足够大的分子会每次迭代都把积分算一遍(称为direct mode)。因为近年来CPU计算速度比I/O速度增长得快(尤其考虑并行计算更是如此),所以有的时候即使硬盘能存得下所有积分,程序也选择direct mode。
libint也可以只算一次然后存下来,只是那个示例文件演示的是direct mode而已

评分 Rate

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

查看全部评分 View all ratings

Zikuan Wang
山东大学光学高等研究中心 研究员
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员
Google Scholar: https://scholar.google.com/citations?user=XW6C6eQAAAAJ
ORCID: https://orcid.org/0000-0002-4540-8734
主页:http://www.qitcs.qd.sdu.edu.cn/info/1133/1776.htm
GitHub:https://github.com/wzkchem5
本团队长期招收研究生,有意者可私信联系

92

帖子

0

威望

2260

eV
积分
2352

Level 5 (御坂)

3#
发表于 Post on 2021-8-7 02:06:39 | 只看该作者 Only view this author
正因为你说的可能需要很大空间才能储存,所以一般不储存,一般做integral direct的hartree fock。储存下来也有可能因为要硬盘读写,所以甚至导致算起来更慢(以前的时候)。

评分 Rate

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

查看全部评分 View all ratings

928

帖子

1

威望

8263

eV
积分
9211

Level 6 (一方通行)

4#
发表于 Post on 2021-8-7 10:14:48 | 只看该作者 Only view this author
并不会浪费计算资源,因为算电子积分(direct)比硬盘读写电子积分快。当然最快的方式还是算一遍全放内存里(incore),但是内存通常比硬盘小得多,只有比较小的分子才能这样。

评分 Rate

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

查看全部评分 View all ratings

6万

帖子

99

威望

6万

eV
积分
125153

管理员

公社社长

5#
发表于 Post on 2021-8-8 01:18:26 | 只看该作者 Only view this author
传统认为conventional积分全存硬盘里的方式不如direct,因为不仅很占硬盘,而且硬盘的I/O速度会拖垮计算速度。但如今PCI-E 4.0的SSD已经能到7000 MB/s了,说不定日后conventional方式会重新被重视起来。
也有semidirect,把贵的积分(高角动量积分)存内存或硬盘里,而低角动量的积分每次用到时现算,ORCA支持。不过由于此时不支持并行,所以也没什么用。
把积分都存内存的incore方式也不一定比direct快,一方面incore时没法结合密度矩阵做积分屏蔽,另一方面Gaussian里用incore时并行效率极低,实际中往往还不如direct快,当内存大而体系小的时候还得刻意写scf=noincore关掉
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

1665

帖子

5

威望

4788

eV
积分
6553

Level 6 (一方通行)

喵星人

6#
发表于 Post on 2021-8-8 04:52:12 | 只看该作者 Only view this author
sobereva 发表于 2021-8-8 01:18
传统认为conventional积分全存硬盘里的方式不如direct,因为不仅很占硬盘,而且硬盘的I/O速度会拖垮计算速 ...

incore是都存在内存不是硬盘啊

6万

帖子

99

威望

6万

eV
积分
125153

管理员

公社社长

7#
发表于 Post on 2021-8-9 18:30:46 | 只看该作者 Only view this author
喵星大佬 发表于 2021-8-8 04:52
incore是都存在内存不是硬盘啊

笔误
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

本版积分规则 Credits rule

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

GMT+8, 2026-2-23 22:40 , Processed in 0.160220 second(s), 21 queries , Gzip On.

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