评述了原子和双原子分子的有限差分Hartree-Fock方法及其在x2dhf程序中的实现

IF 3.4 2区 物理与天体物理 Q1 COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS
Jacek Kobus , Susi Lehtola
{"title":"评述了原子和双原子分子的有限差分Hartree-Fock方法及其在x2dhf程序中的实现","authors":"Jacek Kobus ,&nbsp;Susi Lehtola","doi":"10.1016/j.cpc.2025.109576","DOIUrl":null,"url":null,"abstract":"<div><div>We present an extensive review of the two-dimensional finite difference Hartree–Fock (FD HF) method, and present its implementation in the newest version of <span>x2dhf</span>, the FD HF program for atoms and diatomic molecules. The program was originally published in this journal in 1996, and was last revised in 2013. <span>x2dhf</span> can be used to obtain HF limit values of total energies and multipole moments for a wide range of diatomic molecules and their ions, using either point nuclei or a finite nuclear model. Polarizabilities (<span><math><msub><mrow><mi>α</mi></mrow><mrow><mi>z</mi><mi>z</mi></mrow></msub></math></span>) and hyperpolarizabilities (<span><math><msub><mrow><mi>β</mi></mrow><mrow><mi>z</mi><mi>z</mi><mi>z</mi></mrow></msub></math></span>, <span><math><msub><mrow><mi>γ</mi></mrow><mrow><mi>z</mi><mi>z</mi><mi>z</mi><mi>z</mi></mrow></msub></math></span>, <span><math><msub><mrow><mi>A</mi></mrow><mrow><mi>z</mi><mo>,</mo><mi>z</mi><mi>z</mi></mrow></msub></math></span>, <span><math><msub><mrow><mi>B</mi></mrow><mrow><mi>z</mi><mi>z</mi><mo>,</mo><mi>z</mi><mi>z</mi></mrow></msub></math></span>) can also be computed by the program with the finite-field method. <span>x2dhf</span> has been extensively used in the literature to assess the accuracy of existing atomic basis sets and to help in developing new ones. As a new feature since the last revision, the program can now also perform Kohn–Sham density functional calculations with local and generalized gradient exchange-correlation functionals with the Libxc library of density functionals, enabling new types of studies. Furthermore, the initialization of calculations has been greatly simplified. As before, <span>x2dhf</span> can also perform one-particle calculations with (smooth) Coulomb, Green–Sellin–Zachor and Krammers–Henneberger potentials, while calculations with a superposition of atomic potentials have been added as a new feature. The program is easy to install from the GitHub repository and build via CMake using the <span>x2dhfctl</span> script that facilitates creating its single- and multiple-threaded versions, as well as building in Libxc support. Calculations can be carried out with <span>x2dhf</span> in double- or quadruple-precision arithmetic.</div></div><div><h3>New version program summary</h3><div><em>Program Title:</em> <span>x2dhf</span></div><div><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/xxf6fc2vjm.1</span><svg><path></path></svg></span></div><div><em>Developer's repository link:</em> <span><span>https://github.com/x2dhf/x2dhf</span><svg><path></path></svg></span></div><div><em>Licensing provisions:</em> GPLv3</div><div><em>Programming language:</em> Fortran 95, C</div><div><em>Journal reference of previous version:</em> Comput. Phys. Commun. 184 (2013) 799-811 [1].</div><div><em>Does the new version supersede the previous version?:</em> Yes</div><div><em>Reasons for the new version:</em> Code modularisation with Fortran 95, parallelisation via OpenMP and Portable Operating System Interface threads (pthreads), support for density functional theory using the Libxc library [2], simplified initialization of calculations, build process facilitated by CMake and <span>x2dhfctl</span> (a Bash script), testing facilitated by <span>testctl</span> (a Bash script) and a host of test suites.</div><div><em>Summary of revisions:</em> Code overhauled, modularised and streamlined with Fortran 95 standard, parallelisation of the self-consistent field (SCF) process and the successive overrelaxation (SOR) algorithm, corrected implementation of GGA functionals and support for the Libxc library of density functionals [2], improved initialisation of the SCF process via HF or LDA atomic orbitals and the superposition of atomic potentials [3], an enlarged test suite of input data and the corresponding outputs (235 in all) and <span>xhf</span> and <span>testctl</span> scripts to run and examine the tests. Script <span>x2dhfctl</span> added to control the build process via CMake, <span>pecctl</span> to automate calculations of potential energy curves and <span>elpropctl</span> to calculate (hyper)polarisabilities.</div><div><em>Nature of problem:</em> The program finds numerically exact solutions of the HF or Kohn–Sham density functional equations for atoms, diatomic molecules, and their ions by determining the lowest energy eigenstates of a given irreducible representation and spin. Density functional calculations can be carried out using various exchange and correlation functionals provided by the Libxc library [2]. The program can also be used to perform independent particle calculations with the (smooth) Coulomb, Green–Sellin–Zachor, Krammers–Henneberger, and superposition of atomic potentials [3], as well as two-particle HF calculations for the harmonium atom.</div><div><em>Solution method:</em> Factoring out the analytical angular solution around the bond axis, two-dimensional numerical single-particle functions (orbitals) are used to construct an antisymmetric many-electron wave function according to the restricted open-shell HF or density functional theory (DFT) model. The HF/DFT equations are written as coupled two-dimensional second-order (elliptic) partial differential equations (PDEs), which are discretized by an eighth order central difference stencil on a two-dimensional grid, whereas quadrature is performed with a Newton–Cotes rule. The resulting large and sparse system of linear equations are solved by the (multicolour) successive overrelaxation ((MC)SOR) method, and the orbitals and potentials are solved by simultaneous SOR iterations on the corresponding Poisson equations. The convergence of the SCF procedure is monitored with that of the orbital energies and normalisation factors. The precision of the obtained solutions depends on the grid and the system under consideration, and one can typically obtain orbitals that yield total and orbital energies with up to 12 significant figures using double precision arithmetic. If more precise results are needed, <span>x2dhf</span> can also be compiled in quadruple precision floating-point arithmetic.</div><div><em>Additional comments including restrictions and unusual features:</em> CMake (ver. 3) and gfortran/ifort compiler are required to compile and build the program. The incomplete gamma function is needed to evaluate hydrogenic orbitals and its values are calculated by means of the <span>dgamit.F</span> subroutine written by Fullerton [4] which uses FORTRAN 90 versions of <span>d1mach</span> and <span>i1mach</span> functions.</div></div><div><h3>References</h3><div><ul><li><span>[1]</span><span><div>J. Kobus, A finite difference Hartree–Fock program for atoms and diatomic molecules, Comput. Phys. Commun. 184 (2013) 799–811, <span><span>https://doi.org/10.1016/j.cpc.2012.09.033</span><svg><path></path></svg></span>.</div></span></li><li><span>[2]</span><span><div>S. Lehtola, C. Steigemann, M.J.T. Oliveira, M.A.L. Marques, Recent developments in LIBXC—a comprehensive library of functionals for density functional theory, SoftwareX 7 (2018) 1–5, <span><span>https://doi.org/10.1016/j.softx.2017.11.002</span><svg><path></path></svg></span>.</div></span></li><li><span>[3]</span><span><div>S. Lehtola, Assessment of initial guesses for self-consistent field calculations. Superposition of atomic potentials: simple yet efficient, J. Chem. Theory Comput. 15 (2019) 1593–1604, <span><span>https://doi.org/10.1021/acs.jctc.8b01089</span><svg><path></path></svg></span>, <span><span>arXiv:1810.11659</span><svg><path></path></svg></span>.</div></span></li><li><span>[4]</span><span><div>W. Fullerton, Netlib, July 1977 edition, C3, Los Alamos Scientific Lab.</div></span></li></ul></div></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":"311 ","pages":"Article 109576"},"PeriodicalIF":3.4000,"publicationDate":"2025-03-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Review of the finite difference Hartree–Fock method for atoms and diatomic molecules, and its implementation in the x2dhf program\",\"authors\":\"Jacek Kobus ,&nbsp;Susi Lehtola\",\"doi\":\"10.1016/j.cpc.2025.109576\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>We present an extensive review of the two-dimensional finite difference Hartree–Fock (FD HF) method, and present its implementation in the newest version of <span>x2dhf</span>, the FD HF program for atoms and diatomic molecules. The program was originally published in this journal in 1996, and was last revised in 2013. <span>x2dhf</span> can be used to obtain HF limit values of total energies and multipole moments for a wide range of diatomic molecules and their ions, using either point nuclei or a finite nuclear model. Polarizabilities (<span><math><msub><mrow><mi>α</mi></mrow><mrow><mi>z</mi><mi>z</mi></mrow></msub></math></span>) and hyperpolarizabilities (<span><math><msub><mrow><mi>β</mi></mrow><mrow><mi>z</mi><mi>z</mi><mi>z</mi></mrow></msub></math></span>, <span><math><msub><mrow><mi>γ</mi></mrow><mrow><mi>z</mi><mi>z</mi><mi>z</mi><mi>z</mi></mrow></msub></math></span>, <span><math><msub><mrow><mi>A</mi></mrow><mrow><mi>z</mi><mo>,</mo><mi>z</mi><mi>z</mi></mrow></msub></math></span>, <span><math><msub><mrow><mi>B</mi></mrow><mrow><mi>z</mi><mi>z</mi><mo>,</mo><mi>z</mi><mi>z</mi></mrow></msub></math></span>) can also be computed by the program with the finite-field method. <span>x2dhf</span> has been extensively used in the literature to assess the accuracy of existing atomic basis sets and to help in developing new ones. As a new feature since the last revision, the program can now also perform Kohn–Sham density functional calculations with local and generalized gradient exchange-correlation functionals with the Libxc library of density functionals, enabling new types of studies. Furthermore, the initialization of calculations has been greatly simplified. As before, <span>x2dhf</span> can also perform one-particle calculations with (smooth) Coulomb, Green–Sellin–Zachor and Krammers–Henneberger potentials, while calculations with a superposition of atomic potentials have been added as a new feature. The program is easy to install from the GitHub repository and build via CMake using the <span>x2dhfctl</span> script that facilitates creating its single- and multiple-threaded versions, as well as building in Libxc support. Calculations can be carried out with <span>x2dhf</span> in double- or quadruple-precision arithmetic.</div></div><div><h3>New version program summary</h3><div><em>Program Title:</em> <span>x2dhf</span></div><div><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/xxf6fc2vjm.1</span><svg><path></path></svg></span></div><div><em>Developer's repository link:</em> <span><span>https://github.com/x2dhf/x2dhf</span><svg><path></path></svg></span></div><div><em>Licensing provisions:</em> GPLv3</div><div><em>Programming language:</em> Fortran 95, C</div><div><em>Journal reference of previous version:</em> Comput. Phys. Commun. 184 (2013) 799-811 [1].</div><div><em>Does the new version supersede the previous version?:</em> Yes</div><div><em>Reasons for the new version:</em> Code modularisation with Fortran 95, parallelisation via OpenMP and Portable Operating System Interface threads (pthreads), support for density functional theory using the Libxc library [2], simplified initialization of calculations, build process facilitated by CMake and <span>x2dhfctl</span> (a Bash script), testing facilitated by <span>testctl</span> (a Bash script) and a host of test suites.</div><div><em>Summary of revisions:</em> Code overhauled, modularised and streamlined with Fortran 95 standard, parallelisation of the self-consistent field (SCF) process and the successive overrelaxation (SOR) algorithm, corrected implementation of GGA functionals and support for the Libxc library of density functionals [2], improved initialisation of the SCF process via HF or LDA atomic orbitals and the superposition of atomic potentials [3], an enlarged test suite of input data and the corresponding outputs (235 in all) and <span>xhf</span> and <span>testctl</span> scripts to run and examine the tests. Script <span>x2dhfctl</span> added to control the build process via CMake, <span>pecctl</span> to automate calculations of potential energy curves and <span>elpropctl</span> to calculate (hyper)polarisabilities.</div><div><em>Nature of problem:</em> The program finds numerically exact solutions of the HF or Kohn–Sham density functional equations for atoms, diatomic molecules, and their ions by determining the lowest energy eigenstates of a given irreducible representation and spin. Density functional calculations can be carried out using various exchange and correlation functionals provided by the Libxc library [2]. The program can also be used to perform independent particle calculations with the (smooth) Coulomb, Green–Sellin–Zachor, Krammers–Henneberger, and superposition of atomic potentials [3], as well as two-particle HF calculations for the harmonium atom.</div><div><em>Solution method:</em> Factoring out the analytical angular solution around the bond axis, two-dimensional numerical single-particle functions (orbitals) are used to construct an antisymmetric many-electron wave function according to the restricted open-shell HF or density functional theory (DFT) model. The HF/DFT equations are written as coupled two-dimensional second-order (elliptic) partial differential equations (PDEs), which are discretized by an eighth order central difference stencil on a two-dimensional grid, whereas quadrature is performed with a Newton–Cotes rule. The resulting large and sparse system of linear equations are solved by the (multicolour) successive overrelaxation ((MC)SOR) method, and the orbitals and potentials are solved by simultaneous SOR iterations on the corresponding Poisson equations. The convergence of the SCF procedure is monitored with that of the orbital energies and normalisation factors. The precision of the obtained solutions depends on the grid and the system under consideration, and one can typically obtain orbitals that yield total and orbital energies with up to 12 significant figures using double precision arithmetic. If more precise results are needed, <span>x2dhf</span> can also be compiled in quadruple precision floating-point arithmetic.</div><div><em>Additional comments including restrictions and unusual features:</em> CMake (ver. 3) and gfortran/ifort compiler are required to compile and build the program. The incomplete gamma function is needed to evaluate hydrogenic orbitals and its values are calculated by means of the <span>dgamit.F</span> subroutine written by Fullerton [4] which uses FORTRAN 90 versions of <span>d1mach</span> and <span>i1mach</span> functions.</div></div><div><h3>References</h3><div><ul><li><span>[1]</span><span><div>J. Kobus, A finite difference Hartree–Fock program for atoms and diatomic molecules, Comput. Phys. Commun. 184 (2013) 799–811, <span><span>https://doi.org/10.1016/j.cpc.2012.09.033</span><svg><path></path></svg></span>.</div></span></li><li><span>[2]</span><span><div>S. Lehtola, C. Steigemann, M.J.T. Oliveira, M.A.L. Marques, Recent developments in LIBXC—a comprehensive library of functionals for density functional theory, SoftwareX 7 (2018) 1–5, <span><span>https://doi.org/10.1016/j.softx.2017.11.002</span><svg><path></path></svg></span>.</div></span></li><li><span>[3]</span><span><div>S. Lehtola, Assessment of initial guesses for self-consistent field calculations. Superposition of atomic potentials: simple yet efficient, J. Chem. Theory Comput. 15 (2019) 1593–1604, <span><span>https://doi.org/10.1021/acs.jctc.8b01089</span><svg><path></path></svg></span>, <span><span>arXiv:1810.11659</span><svg><path></path></svg></span>.</div></span></li><li><span>[4]</span><span><div>W. Fullerton, Netlib, July 1977 edition, C3, Los Alamos Scientific Lab.</div></span></li></ul></div></div>\",\"PeriodicalId\":285,\"journal\":{\"name\":\"Computer Physics Communications\",\"volume\":\"311 \",\"pages\":\"Article 109576\"},\"PeriodicalIF\":3.4000,\"publicationDate\":\"2025-03-06\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Computer Physics Communications\",\"FirstCategoryId\":\"101\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S0010465525000797\",\"RegionNum\":2,\"RegionCategory\":\"物理与天体物理\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Physics Communications","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0010465525000797","RegionNum":2,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
引用次数: 0

摘要

我们对二维有限差分Hartree-Fock (FD HF)方法进行了广泛的回顾,并在最新版本的x2dhf中实现了它,x2dhf是原子和双原子分子的FD HF程序。该计划最初于1996年发表在该杂志上,最后一次修订是在2013年。x2dhf可以用点核或有限核模型获得大范围双原子分子及其离子的总能量和多极矩的HF极限值。该程序还可以用有限场法计算极化率(αzz)和超极化率(βzzz, γzzzz, Az,zz, Bzz,zz)。X2dhf在文献中被广泛用于评估现有原子基集的准确性,并帮助开发新的原子基集。作为自上次修订以来的新功能,该程序现在还可以使用Libxc密度泛函库执行局部和广义梯度交换相关泛函的Kohn-Sham密度泛函计算,从而实现新的研究类型。此外,计算的初始化也大大简化。和以前一样,x2dhf也可以用(光滑)库仑势、格林-塞林-扎克势和克莱默斯-亨内伯格势进行单粒子计算,同时增加了原子势叠加的计算作为一个新功能。该程序很容易从GitHub存储库安装,并通过CMake使用x2dhfctl脚本构建,该脚本有助于创建其单线程和多线程版本,以及在Libxc支持下构建。可以用x2dhf进行双精度或四精度的计算。新版本程序摘要程序标题:x2dhfCPC库链接到程序文件:https://doi.org/10.17632/xxf6fc2vjm.1Developer's存储库链接:https://github.com/x2dhf/x2dhfLicensing条款:gplv3编程语言:Fortran 95, c上一版本的期刊参考:Comput。理论物理。公报。184(2013)799-811[1]。新版本是否取代旧版本?新版本的原因:使用Fortran 95的代码模块化,通过OpenMP和可移植操作系统接口线程(pthreads)并行化,使用Libxc库[2]支持密度泛函理论,简化计算初始化,由CMake和x2dhfctl(一个Bash脚本)促进的构建过程,由testctl(一个Bash脚本)促进的测试和一系列测试套件。修订摘要:用Fortran 95标准对代码进行了彻底的修改、模块化和精简,并行化了自洽场(SCF)过程和连续过松弛(SOR)算法,修正了GGA泛函的实现并支持Libxc密度泛函库[2],通过HF或LDA原子轨道和原子势的叠加[3]改进了SCF过程的初始化。输入数据和相应输出(总共235个)的扩展测试套件以及用于运行和检查测试的XHF和testctl脚本。添加脚本x2dhfctl来控制构建过程,通过CMake, pecctl自动计算势能曲线和elpropctl来计算(超)极化。问题性质:该程序通过确定给定不可约表示和自旋的最低能量特征态,为原子,双原子分子及其离子找到HF或Kohn-Sham密度泛函方程的数值精确解。密度泛函计算可以使用Libxc库[2]提供的各种交换和相关函数来执行。该程序还可以使用(光滑)库仑、格林-塞林-扎克、克莱默斯-亨内伯格和原子势[3]的叠加进行独立粒子计算,以及谐波原子的双粒子HF计算。求解方法:根据限制开壳HF或密度泛函理论(DFT)模型,提出围绕键轴的解析角解,利用二维数值单粒子函数(轨道)构造反对称多电子波函数。HF/DFT方程被写成耦合的二维二阶(椭圆)偏微分方程(PDEs),通过二维网格上的八阶中心差分模板进行离散,而正交则通过牛顿-柯特规则进行。利用(多色)连续超松弛((MC)SOR)方法求解得到的大而稀疏的线性方程组,并通过对相应泊松方程的同步SOR迭代求解轨道和势。用轨道能量和归一化因子的收敛来监测SCF过程的收敛。所得到的解的精度取决于所考虑的网格和系统,通常可以使用双精度算法获得总能量和轨道能量高达12位有效数字的轨道。 如果需要更精确的结果,x2dhf也可以用四倍精度浮点算法编译。额外的评论,包括限制和不寻常的功能:3)和gfortran/ifort编译器需要编译和构建程序。氢轨道的计算需要不完全伽马函数,它的值是用双gamit来计算的。由Fullerton编写的子程序,它使用FORTRAN 90版本的d1mach和i1mach函数。原子和双原子分子的有限差分Hartree-Fock程序,计算机学报。理论物理。common . 184 (2013) 799-811, https://doi.org/10.1016/j.cpc.2012.09.033.[2]S。Lehtola, C. Steigemann, M.J.T. Oliveira, M.A.L. Marques,密度泛函理论的综合函数库libxc的最新进展,SoftwareX 7 (2018) 1-5, https://doi.org/10.1016/j.softx.2017.11.002.[3]S。Lehtola,自洽场计算的初步猜测评估。原子势的叠加:简单而有效,化学。理论计算,15 (2019)1593-1604,https://doi.org/10.1021/acs.jctc.8b01089, arXiv:1810.11659。富勒顿,Netlib, 1977年7月版,C3,洛斯阿拉莫斯科学实验室。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Review of the finite difference Hartree–Fock method for atoms and diatomic molecules, and its implementation in the x2dhf program
We present an extensive review of the two-dimensional finite difference Hartree–Fock (FD HF) method, and present its implementation in the newest version of x2dhf, the FD HF program for atoms and diatomic molecules. The program was originally published in this journal in 1996, and was last revised in 2013. x2dhf can be used to obtain HF limit values of total energies and multipole moments for a wide range of diatomic molecules and their ions, using either point nuclei or a finite nuclear model. Polarizabilities (αzz) and hyperpolarizabilities (βzzz, γzzzz, Az,zz, Bzz,zz) can also be computed by the program with the finite-field method. x2dhf has been extensively used in the literature to assess the accuracy of existing atomic basis sets and to help in developing new ones. As a new feature since the last revision, the program can now also perform Kohn–Sham density functional calculations with local and generalized gradient exchange-correlation functionals with the Libxc library of density functionals, enabling new types of studies. Furthermore, the initialization of calculations has been greatly simplified. As before, x2dhf can also perform one-particle calculations with (smooth) Coulomb, Green–Sellin–Zachor and Krammers–Henneberger potentials, while calculations with a superposition of atomic potentials have been added as a new feature. The program is easy to install from the GitHub repository and build via CMake using the x2dhfctl script that facilitates creating its single- and multiple-threaded versions, as well as building in Libxc support. Calculations can be carried out with x2dhf in double- or quadruple-precision arithmetic.

New version program summary

Program Title: x2dhf
CPC Library link to program files: https://doi.org/10.17632/xxf6fc2vjm.1
Developer's repository link: https://github.com/x2dhf/x2dhf
Licensing provisions: GPLv3
Programming language: Fortran 95, C
Journal reference of previous version: Comput. Phys. Commun. 184 (2013) 799-811 [1].
Does the new version supersede the previous version?: Yes
Reasons for the new version: Code modularisation with Fortran 95, parallelisation via OpenMP and Portable Operating System Interface threads (pthreads), support for density functional theory using the Libxc library [2], simplified initialization of calculations, build process facilitated by CMake and x2dhfctl (a Bash script), testing facilitated by testctl (a Bash script) and a host of test suites.
Summary of revisions: Code overhauled, modularised and streamlined with Fortran 95 standard, parallelisation of the self-consistent field (SCF) process and the successive overrelaxation (SOR) algorithm, corrected implementation of GGA functionals and support for the Libxc library of density functionals [2], improved initialisation of the SCF process via HF or LDA atomic orbitals and the superposition of atomic potentials [3], an enlarged test suite of input data and the corresponding outputs (235 in all) and xhf and testctl scripts to run and examine the tests. Script x2dhfctl added to control the build process via CMake, pecctl to automate calculations of potential energy curves and elpropctl to calculate (hyper)polarisabilities.
Nature of problem: The program finds numerically exact solutions of the HF or Kohn–Sham density functional equations for atoms, diatomic molecules, and their ions by determining the lowest energy eigenstates of a given irreducible representation and spin. Density functional calculations can be carried out using various exchange and correlation functionals provided by the Libxc library [2]. The program can also be used to perform independent particle calculations with the (smooth) Coulomb, Green–Sellin–Zachor, Krammers–Henneberger, and superposition of atomic potentials [3], as well as two-particle HF calculations for the harmonium atom.
Solution method: Factoring out the analytical angular solution around the bond axis, two-dimensional numerical single-particle functions (orbitals) are used to construct an antisymmetric many-electron wave function according to the restricted open-shell HF or density functional theory (DFT) model. The HF/DFT equations are written as coupled two-dimensional second-order (elliptic) partial differential equations (PDEs), which are discretized by an eighth order central difference stencil on a two-dimensional grid, whereas quadrature is performed with a Newton–Cotes rule. The resulting large and sparse system of linear equations are solved by the (multicolour) successive overrelaxation ((MC)SOR) method, and the orbitals and potentials are solved by simultaneous SOR iterations on the corresponding Poisson equations. The convergence of the SCF procedure is monitored with that of the orbital energies and normalisation factors. The precision of the obtained solutions depends on the grid and the system under consideration, and one can typically obtain orbitals that yield total and orbital energies with up to 12 significant figures using double precision arithmetic. If more precise results are needed, x2dhf can also be compiled in quadruple precision floating-point arithmetic.
Additional comments including restrictions and unusual features: CMake (ver. 3) and gfortran/ifort compiler are required to compile and build the program. The incomplete gamma function is needed to evaluate hydrogenic orbitals and its values are calculated by means of the dgamit.F subroutine written by Fullerton [4] which uses FORTRAN 90 versions of d1mach and i1mach functions.

References

  • [1]
    J. Kobus, A finite difference Hartree–Fock program for atoms and diatomic molecules, Comput. Phys. Commun. 184 (2013) 799–811, https://doi.org/10.1016/j.cpc.2012.09.033.
  • [2]
    S. Lehtola, C. Steigemann, M.J.T. Oliveira, M.A.L. Marques, Recent developments in LIBXC—a comprehensive library of functionals for density functional theory, SoftwareX 7 (2018) 1–5, https://doi.org/10.1016/j.softx.2017.11.002.
  • [3]
    S. Lehtola, Assessment of initial guesses for self-consistent field calculations. Superposition of atomic potentials: simple yet efficient, J. Chem. Theory Comput. 15 (2019) 1593–1604, https://doi.org/10.1021/acs.jctc.8b01089, arXiv:1810.11659.
  • [4]
    W. Fullerton, Netlib, July 1977 edition, C3, Los Alamos Scientific Lab.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Computer Physics Communications
Computer Physics Communications 物理-计算机:跨学科应用
CiteScore
12.10
自引率
3.20%
发文量
287
审稿时长
5.3 months
期刊介绍: The focus of CPC is on contemporary computational methods and techniques and their implementation, the effectiveness of which will normally be evidenced by the author(s) within the context of a substantive problem in physics. Within this setting CPC publishes two types of paper. Computer Programs in Physics (CPiP) These papers describe significant computer programs to be archived in the CPC Program Library which is held in the Mendeley Data repository. The submitted software must be covered by an approved open source licence. Papers and associated computer programs that address a problem of contemporary interest in physics that cannot be solved by current software are particularly encouraged. Computational Physics Papers (CP) These are research papers in, but are not limited to, the following themes across computational physics and related disciplines. mathematical and numerical methods and algorithms; computational models including those associated with the design, control and analysis of experiments; and algebraic computation. Each will normally include software implementation and performance details. The software implementation should, ideally, be available via GitHub, Zenodo or an institutional repository.In addition, research papers on the impact of advanced computer architecture and special purpose computers on computing in the physical sciences and software topics related to, and of importance in, the physical sciences may be considered.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信