zha23 发表于 2022-2-18 16:14 简单体系如果SCF不收敛,在2个能量值之间振荡的话,就要用DIIS了。 |
zha23 发表于 2022-2-18 16:14 你说得对 |
Freeman 发表于 2022-2-18 16:01 我没有进行并行化处理,我觉得不应该复制指针,而是直接复制数据,因为如果是多线程有访问冲突的问题,对于多进程其内存是不共享的。 我最大的问题是计算完积分后如何更新Fock矩阵,我计算的结果和gaussian的结果有些不同,并且用6-311g计算乙烷不收敛,而用6-31g**都可以。 |
其实只要利用施瓦茨不等式屏蔽掉绝对值很小的积分,利用双电子积分的八重对称性和分子的点群对称性避免重复计算等价的积分,存储成稀疏矩阵的形式,一般的计算节点其实是存得下中等大小的分子的双电子积分的。还不够的话就用密度拟合。 有的程序搞并行,可能把双电子积分复制了好几份分给每个进程,内存就不够用了,但是我猜只要把指向双电子积分所在的内存的指针分成好几份分给每个进程,就避免了复制双电子积分,也就节省了内存。 |
手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图
GMT+8, 2025-8-14 20:06 , Processed in 1.695395 second(s), 26 queries , Gzip On.