|
|
本帖最后由 UW_0728. 于 2026-4-6 23:42 编辑
我借助Claude尝试性地生成了一个Python脚本,用于将dftd4源码包中有用的参数文件整合、转化为CP2K中计算D4需要的且符合CP2K的Fortran代码格式要求的Fortran文件。脚本见附件。这个脚本应该生成两个文件,一个是qs_dispersion_data.F,储存与元素有关的一般参数,大小十几kB;另一个是qs_dispersion_ref.F,储存参考EEQ电荷、极化率等计算C6值需要的信息,大小400+kB。这个脚本将来可以放到tools子目录下一个单另的文件夹里。目前其具体效果还没有充分验证(这需要后续对d4模块的其他修改)。
如果后续验证表明没问题的话,那就不需要data/dftd4.dat了(D4的参数规模显著小于D3和D3-BJ);此外,源代码中也有其他自动生成的大文件,比如src/hfx_base下的三个文件,以及src/minimax下的minimax_exp_k53.F文件,它们的规模也都明显大于qs_dispersion_ref.F的规模,因此把这些参数放到里面硬编码进去应该是可取的,同时因为有了Python脚本,重新生成这两个文件也很方便(这样唯一需要“手动”关心的参数方面的东西就是会放在qs_dispersion_utils.F里面的泛函相关参数了)。
generate_d4_data.py
(25.57 KB, 下载次数 Times of downloads: 2)
|
|