Keywords

1 Introduction

The main problem of deterministic methods used to solve the Schrödinger equation is the incorrect allowance for interelectronic correlations [1,2,3]. In this case, to refine them, a solution obtained by the stochastic method, the quantum Monte Carlo method (QMC), can be used. Different versions of QMC simulations give an exact solution for boson systems in the sense that the error is determined only by statistics. But in the case of fermion systems with an antisymmetric wave function, successful application of QMC requires knowledge of the nodal surfaces due to the sign problem [4, 5]. An additional approximation associated with the use of Slater determinants introduces an uncontrollable error, and is also very inconvenient for the implementation of Monte Carlo methods.

In [6] we proposed a new approach—Kurchatov Quantum Monte Carlo (KQMC)—that differs from the traditional diffusion Monte Carlo methods [5] by using the stationary Green’s function of the Helmholtz equation. The implementation of the KQMC algorithm on a supercomputer makes it possible to bypass the problems associated with the use of normalization algorithms and to obtain an actually exact solution from a chemical point of view for a number of light atoms.

This paper presents the main aspects related to the parallel implementation of the KQMC method. The calculation results obtained with a supercomputer are analyzed and an assumption is made about the form of the correlation function. Further, the correlation function is used to refine the classical Hartree-Fock method (HF) in terms of the error associated with taking into account correlations of electrons with oppositely directed spins.

2 Parallel Implementation of KQMC

The wave function describing a multifermion system has the well-known antisymmetry property, which is expressed in the Pauli principle. If the QMC methods allowed integrating the entire domain of definition of the wave function, then the solution would converge to the exact solution of the Schrödinger equation. However, this is not the case for the reason that Monte Carlo methods cannot work with sign-changing functions (the sign problem) [4, 5].

Due to the properties of antisymmetry, the wave function of N fermions of the same spin divides the entire space into N! subdomains, in each of which the wave function is of constant sign. In [6] we proposed a method for constructing such a subdomain for the KQMC algorithm, which made it possible to bypass the sign problem at least for some simple fermionic systems. However, the use of normalization algorithms to prevent an unlimited growth of the eigenfunction norm leads to the appearance of an additional error associated with electronic fluctuations in shells located far from the nucleus. Figure 1 shows the magnitude of these fluctuations.

In KQMC, the integral Schrödinger equation of the form (1) is solved:

$$\begin{aligned} \lambda \varPsi (\textbf{r}) = \int \limits _{V}^{}G(\textbf{r}'\rightarrow \textbf{r})k_{0}(\textbf{r}')\varPsi (\textbf{r}')\, dV', \end{aligned}$$
(1)

where

\( \lambda = \sqrt{\frac{E_{0}}{E}} \)—eigenvalue to be determined, \( E_{0} = -\frac{me^{4}}{32\pi ^{2}\hbar ^{2}\varepsilon _{0}^{2}} \);

\( \varPsi \)—wave function of the system, defined in \( \textbf{R}^{3N} \), N—number of electrons;

\(G(r) = r^{1-\frac{3N}{2}}K_{\frac{3N}{2}-1}(r)\);

\(k_{0} = \left( \sum _{i=1}^{N}\frac{2Z}{\left| \widetilde{\textbf{r}}_{0}-\widetilde{\textbf{r}}_{i}\right| } - \sum _{i=1}^{N-1}\sum _{j>i}^{N}\frac{2}{\left| \widetilde{\textbf{r}}_{i}-\widetilde{\textbf{r}}_{j}\right| }\right) \), \(\widetilde{\textbf{r}}_{i} = \frac{\textbf{r}_{i}}{a_{0}}\sqrt{\frac{E}{E_{0}}}\), \( a_{0} = \frac{4\pi \varepsilon _{0}\hbar ^{2}}{me^{2}} \), \(\textbf{r}_{0}\in \textbf{R}^{3} \)—nuclear radius vector, \(\textbf{r}_{i}\in \textbf{R}^{3} \)—radius vector of the i-th electron.

In operator form, Eq. (1) is written as:

$$\begin{aligned} \lambda \varPsi = \textbf{K}\textbf{G}\varPsi , \end{aligned}$$
(2)

where \(\textbf{G}\)—non-local translation operator, \(\textbf{K}\)—local production operator.

To find the maximum modulo eigenvalue and corresponding eigenfunction of the ground state of the calculated system, the following iterative process is realized [7]:

$$\begin{aligned} \varPsi ^{(n+1)} = \textbf{A}\varPsi ^{(n)}, \end{aligned}$$
(3)

where n—iteration number, \(\textbf{A}=\textbf{K}\textbf{G}\).

The eigenvalue corresponding to the ground eigenstate is defined as:

$$\begin{aligned} \left| \lambda _{0}^{(n+1)}\right| = \frac{\Vert \varPsi ^{(n+1)}\Vert }{\Vert \varPsi ^{(n)}\Vert } \xrightarrow [n\rightarrow \infty ]{} \left| \lambda _{0}\right| , \end{aligned}$$
(4)

where \(\Vert \varPsi \Vert \) is any norm of \(\varPsi \). The sequence \(\varPsi ^{(n)}\) converges to an eigenfunction \(\varPsi _{0}\) corresponding to \(\lambda _{0}\).

Fig. 1.
figure 1

Dependence of an average distance over generations (in Bohr radii) of each electron on a series number (20 generations in a series) in Be atom (a) and in B (3s \(^2S\)) atom (b), obtained by KQMC calculation using normalization algorithm.

The distribution \(\varPsi (\textbf{r})\) is represented by a set of discrete sampling points (random walkers) with weights [8]:

$$\begin{aligned} \varPsi (\textbf{r}) \xrightarrow {discrete} \sum _{k}\omega _{k}\delta (\textbf{r} - \textbf{r}_{k}). \end{aligned}$$
(5)

At each iteration (3), the operator \(\textbf{A}\) acts on each such point. Since the operator \( \textbf{A} \) is stochastic itself, its action on \(\sum _{k}\omega _{k}\delta (\textbf{r} - \textbf{r}_{k})\) is understood as the generation of a set of points \(\sum _{k}\widetilde{\omega }_{k}\delta (\textbf{r} - \widetilde{\textbf{r}}_{k})\). A set of points with weights (delta functions with weights) corresponding to one iteration (3) is called a generation.

To estimate the eigenvalue, use not the \(\lambda ^{(n)}\) number for a particular n, but the averaging:

$$\begin{aligned} \varLambda _{M,N} = \dfrac{\lambda ^{(M+1)} + \lambda ^{(M+2)} + \ldots + \lambda ^{(N)}}{N-M}. \end{aligned}$$
(6)

Similarly, the functionals of an eigenfunction are estimated by averaging.

Monte Carlo calculations are inherently parallel in nature. At their most basic they involve calculation of a large set of independent random numbers and then averaging of the set of results obtained by each of these random numbers. The central idea in doing QMC on massively parallel processors is the master-slave paradigm when one processor controlls the whole simulation. In KQMC, each core, generating its own sequence of pseudorandom numbers [9], independently runs a simulation and accumulates its own set of eigenvalues; the eigenvalues from different cores are gathered, averaged, and written by the master core at the end of the run. Due to this, the KQMC parallel algorithm achieves linear scaling on machines with any number of nodes.

The calculations were carried out on the second-generation HPC2 cluster of Complex for Simulation and Data Processing for Mega-science Facilities at NRC “Kurchatov Institute”. One compute node has two Intel Xeon E5450 processors (3.00 GHz, 4 cores), 16 GB of RAM. Interprocessor communications involving sending packets of data between processors are carried out using the MPI standard.

To solve the problem of electronic fluctuations, we abandoned the use of normalization algorithms and introduced a corridor according to the number of particles in a packet—an approach that does not affect the accuracy of the solution obtained [10]. At the same time, it was obtained that when calculating using the corridor on insufficient statistics, a residual fluctuation remains (Fig. 2(a)). To completely solve the problem of electronic fluctuations, at least for the first three periods of the periodic table, a sample of the order of \(10^{12}\) points is needed (Fig. 2(b)). Sampling about \(10^{9}\)\(10^{10}\) points (the average number of points in the corridor is several hundred thousand, the number of generations is several tens of thousands) for elements of the first two periods of periodic table on one core of Intel Xeon E5450 3.00 GHz processor takes up to 10–20 h. Calculation on the same statistics per core, but using 512 cores, allows increasing the total number of sampled points to about \(10^{12}\), while the calculation time in fact remains the same as on one core due to the linear scaling of KQMC.

Fig. 2.
figure 2

Dependence of an average distance over generations (in Bohr radii) of each electron on a series number (20 generations in a series) in B (3s \(^2S\)) atom, calculated using a corridor by a number of particles in a packet per 1 (a) and 512 (b) cores.

3 Analysis of the Results

The HF method is one of the main tools in the theory of electronic structure in chemistry, materials science and other related fields. In this, the wave function of the system is represented as a product of determinants built on one-electron orbital functions with the same spin projection [1, 11]. The problem of the method is that the subspace of solutions chosen in this way does not make it possible to take into account the correlation in the motion of electrons with oppositely directed spins [1]. Therefore, in order to somehow take into account this correlation, in practice, the wave function is usually represented as a linear combination of determinants (configuration interaction), or perturbation theory is used [12]. However, the computational complexity grows with the use of more and more determinants in the configuration interaction, or a larger order of perturbation theory, and the calculation becomes more laborious, which severely limits the scope of these methods. Therefore, the urgent task is to develop fundamentally new methods to account for electron-electron correlation.

The exact functional E of the system can be represented as:

$$\begin{aligned} E = E_{HF} + \delta E_{c}^{\uparrow \uparrow } + \delta E_{c}^{\downarrow \downarrow } + \delta E_{c}^{\uparrow \downarrow }, \end{aligned}$$
(7)

where \(E_{HF}\) is the HF functional; \(\delta E_{c}^{\uparrow \uparrow }\), \(\delta E_{c}^{\downarrow \downarrow }\) and \(\delta E_{c}^{\uparrow \downarrow }\) are correlation corrections for electron pairs with the corresponding spin projection. Correlation corrections \(\delta E_{c}^{\uparrow \uparrow }\) and \(\delta E_{c}^{\downarrow \downarrow }\) for pairs of electrons with the same spin projection are second-order corrections, since in the first order the correlation in the motion of these pairs is taken into account by means of the exchange interactions in \(E_{HF}\). The most significant correction will be \(\delta E_c^{\uparrow \downarrow }\), the form of which is determined by the term with the two-particle density \(\rho (\textbf{r}_{1}^{\uparrow },\textbf{r}_{2}^{\downarrow })\) in the expression for E:

$$\begin{aligned} \begin{gathered} E = - N_{1}\int \limits _{\textbf{R}^{3N}}\varPsi (\textbf{r})\varDelta _{\uparrow }\varPsi (\textbf{r})d\textbf{r} - N_{2}\int \limits _{\textbf{R}^{3N}}\varPsi (\textbf{r})\varDelta _{\downarrow }\varPsi (\textbf{r})d\textbf{r} - N_{1}\int \limits _{\textbf{R}^{3}} 2Z\frac{\rho (\textbf{r}^{\uparrow })}{\vert \textbf{r}^{\uparrow }\vert }d\textbf{r}^{\uparrow } \\ -\, N_{2}\int \limits _{\textbf{R}^{3}} 2Z\frac{\rho (\textbf{r}^{\downarrow })}{\vert \textbf{r}^{\downarrow }\vert }d\textbf{r}^{\downarrow } + N_{1}(N_{1} - 1)\int \limits _{\textbf{R}^{3}}\int \limits _{\textbf{R}^{3}}\frac{\rho (\textbf{r}_{1}^{\uparrow },\textbf{r}_{2}^{\uparrow })}{\vert {\textbf{r}}_{1}^{\uparrow } - {\textbf{r}}_{2}^{\uparrow } \vert }d{\textbf{r}}_{1}^{\uparrow }d{\textbf{r}}_{2}^{\uparrow } \\ +\, N_{2}(N_{2} - 1)\int \limits _{\textbf{R}^{3}}\int \limits _{\textbf{R}^{3}}\frac{\rho (\textbf{r}_{1}^{\downarrow },\textbf{r}_{2}^{\downarrow })}{\vert {\textbf{r}}_{1}^{\downarrow } - {\textbf{r}}_{2}^{\downarrow } \vert }d{\textbf{r}}_{1}^{\downarrow }d{\textbf{r}}_{2}^{\downarrow } + N_{1}N_{2}\int \limits _{\textbf{R}^{3}}\int \limits _{\textbf{R}^{3}}\frac{\rho (\textbf{r}_{1}^{\uparrow },\textbf{r}_{2}^{\downarrow })}{\vert {\textbf{r}}_{1}^{\uparrow } - {\textbf{r}}_{2}^{\downarrow } \vert }d{\textbf{r}}_{1}^{\uparrow }d{\textbf{r}}_{2}^{\downarrow }. \end{gathered} \end{aligned}$$
(8)

To register the functional \(\rho (\textbf{r}_{1}^{\uparrow },\textbf{r}_{2}^{\downarrow }) \equiv \rho (r_{1},r_{2},\mu _{12})\) in KQMC, we used a spatial grid. Based on the conditions, the grid was chosen so that the change in the solution inside the grid would be significantly less than we are interested in from a practical point of view. Over these areas, the solution obtained by KQMC was integrated with an average statistical error of order \(\frac{1}{\sqrt{N}}\), where N is the number sampling points.

Next, we represent the exact density function in the form:

$$\begin{aligned} \begin{gathered} \rho (r_{1},r_{2},\mu _{12}) = \dfrac{\rho (r_{1},r_{2},\mu _{12})}{\overline{\rho }(r_{1},r_{2})}\overline{\rho }(r_{1},r_{2}) = \xi (r_{1},r_{2},\mu _{12})\overline{\rho }(r_{1},r_{2}), \\ \overline{\rho }(r_{1},r_{2}) = \int \limits _{-1}^{1}\rho (r_{1},r_{2},\mu _{12})d\mu . \end{gathered} \end{aligned}$$
(9)

Theoretically, the function \(\xi \) can be expanded into a series using Legendre polynomials in \(\mu _{12}\). For He atom, the simplest system with two electrons having different values of the spin projection, it was found that the dependence of the function \(\xi \) on \(\mu _{12}\) is close to linear (Fig. 3(a)), so the first two terms of the expansion are sufficient:

$$\begin{aligned} \xi (r_{1},r_{2},\mu _{12}) \cong 1 - a(r_{1},r_{2})\mu _{12}. \end{aligned}$$
(10)

A similar result for \(\xi \) was obtained for pairs of electrons with opposite values of the spin projection in Li atom (for example, for a pair of 1s2s-electrons in Fig. 3(b)).

The following boundary conditions for the coefficient a are obvious:

$$\begin{aligned} \begin{gathered} a(r_{1},r_{2}) = a(r_{2},r_{1}), \\ a(0,r_{2}) = a(r_{1},0), \\ a(r_{1},r_{2}) \xrightarrow [|\textbf{r}_{1}-\textbf{r}_{2}|\rightarrow \infty ]{} 0. \end{gathered} \end{aligned}$$
(11)

The form of the dependence of the function \(a(r_{1},r_{2})\) on \(r_{1}\) at different values of \(r_{2}\), obtained by the KQMC for He atom, is shown in Fig. 4. The function \(a(r_{1},r_{2})\) has a minimum at \(r_{1} = r_{2}\). The function \(max\big (a(r_{1},r_{2})\big ) = a(r,r)\) is well approximated by a power law:

$$\begin{aligned} a(r,r) = e^{-\frac{p}{r^{q}}}, \end{aligned}$$
(12)

where p and q are some numbers (Fig. 5). The same type of dependence of the function \(a(r_{1},r_{2})\) on \(r_{1}\) at different values of \(r_{2}\) with a minimum at \(r_{1} = r_{2}\) was obtained for pairs of electrons with different values of the spin projection in Li atom. The only difference is in the values of p and q for \(max\big (a(r_{1},r_{2})\big )\) in the expression (12).

Fig. 3.
figure 3

Dependence of the function \(\xi \) on \(\mu _{12}\) for different values of \(r_1\) and \(r_2\), calculated by the KQMC method for He atom (a) and for a pair of 1s2s-electrons with opposite values of the spin projection in Li atom (b).

The form of the function \(a\left( r_1,r_2\right) \) for He and Li atoms defined from the KQMC calculation turned out to be the same:

$$\begin{aligned} a(r_{1},r_{2}) = - \exp \left\{ -\dfrac{p}{{r_{2}}^{q}}\right\} \left( -2\left( \frac{r_{1}}{r_{2}}\right) ^{3}+3\left( \frac{r_{1}}{r_{2}}\right) ^{2}\right) ,~r_{1} \le r_{2}. \end{aligned}$$
(13)
Fig. 4.
figure 4

Dependence of the function \(a(r_1,r_2)\) on \(r_1\) for different values of \(r_2\) obtained by the KQMC method for He atom.

4 Application of the Correlation Function

Taking into account (8), (9) and (10), the correction \(\delta E_c^{\uparrow \downarrow }\) is defined as follows:

$$\begin{aligned} \begin{gathered} \delta E_c^{\uparrow \downarrow } = \int \int \dfrac{\rho ^{\uparrow }({\textbf{r}_1})\rho ^{\downarrow }({\textbf{r}_2}) a ({\textbf{r}_1}, {\textbf{r}_2}) \mu d {\textbf{r}_1} d {\textbf{r}_2}}{|{\textbf{r}_1} - {\textbf{r}_2}|}. \end{gathered} \end{aligned}$$
(14)

Next, we make an assumption that the form (13) of the correlation function \(a(r_1,r_2)\) obtained for He and Li atoms is universal based on the results obtained in the previous section. In addition, the corrections (14) can be calculated within the theory of small perturbations framework: the magnitude of the corrections coincides up to fractions of a percent, regardless of either the orbital functions of the classical HF are used to calculate the densities in (14), or an additional term, which was obtained as a result of applying the variational principle to the functional \(E=E_{HF}+\delta E_c^{\uparrow \downarrow }\), was introduced into the HF equations. The correction to the ionization energy in the framework of the theory of small perturbations can be calculated by the formula:

$$\begin{aligned} \begin{gathered} \delta I_i = \iint \dfrac{{\varphi _i^{\uparrow }}^2({\textbf{r}_1})\rho ^{\downarrow }({\textbf{r}_2}) a ({\textbf{r}_1}, {\textbf{r}_2}) \mu d {\textbf{r}_1} d {\textbf{r}_2}}{|{\textbf{r}_1} - {\textbf{r}_2}|}, \end{gathered} \end{aligned}$$
(15)

where \(\varphi _i^\uparrow \) is the orbital function of the i-th valence electron with spin projection \(+\frac{1}{2}\).

Fig. 5.
figure 5

Approximation of the function \(max[a(r_{1},r_{2})] = a(r,r)\) obtained by the KQMC method for He and Li atoms.

Figure 6 demonstrates that the rather simple corrections introduced in this way, which take into account the correlation, made it possible to refine the HF to an almost chemical accuracy practically without increasing computational costs at least for the first two periods of the periodic table. The exceptions are elements with completely filled shells with valence s-electrons: He and Be. We identified the source of this error as an exceptional feature associated with the spatial dependence of HF wave function on \(\overline{\rho }(r_{1},r_{2})\), which can be refined by introducing additional corrections.

Fig. 6.
figure 6

Value of the error in the energy of the valence electron for the calculation by the HF method without and with corrections of the form (15) depending on the element number N.

5 Conclusions

In this work, the results of calculations of light atoms on a supercomputer using a program that implements the parallel KQMC algorithm were investigated to determine the general properties of electron correlations. The form of the correlation function was obtained from the analysis of the two-particle electron density of He and Li atoms, using which the correlation corrections to the HF ionization energies for the elements of the first two periods of the periodic table were calculated. These corrections made it possible to refine the HF method to an almost chemical accuracy with exception of elements with completely filled shells with valence s-electrons. In the future, it is planned to introduce corrections of this type for all elements of the periodic table.