TurboRVB

TurboRVB is a package for ab initio QMC simulations of both molecular and bulk electronic systems.

Sandro Sorella (SISSA), Kosuke Nakano (SISSA, JAIST), Oto Kohulak (SISSA), Sam Azadi (SISSA), Abhishek Khedkar (SISSA), and Saverio Moroni (SISSA, CNR)

TurboRVB is a package for ab initio QMC simulations of both molecular and bulk electronic systems. The code implements two types of well-established QMC algorithms: Variational Monte Carlo (VMC) and diffusion Monte Carlo in its robust and efficient lattice regularized variant. A key feature of the code is the possibility to use strongly correlated many-body wave functions, capable of describing several materials with very high accuracy, even when standard mean-field approaches such as density functional theory (DFT) fail.  

The code implements the adjoint algorithmic differentiation that enables a very efficient evaluation of energy derivatives, comprising the ionic forces. Thus, one can perform structural optimizations and molecular dynamics in the canonical NVT ensemble at the VMC level. For the electronic part, a full WF optimization (Jastrow and antisymmetric parts together) is made possible thanks to state-of-the-art stochastic algorithms for energy minimization. In the optimization procedure, the first guess can be obtained at the mean-field level by a built-in DFT driver. 

The code has been efficiently parallelized by using a hybrid MPI-OpenMP protocol and already exploits rather efficiently GPU accelerators, that are currently available and are likely to become an unavoidable tool for reaching the best computational performance in future HPC centres.

Audience

Computational physicists and chemists.

Videos

Learn more about the TREX Code: TurboRVB from:

  • Sandro Sorella, Professor at SISSA  Watch now
  • Michele Casula, Doctor at CNRS  Watch now
  • Kosuke Nakano, Research Associate at SISSA  Watch now

A key feature of the code is the possibility of using strongly correlated many-body wave functions, capable of describing several materials with very high accuracy, even when standard mean-field approaches (e.g., density functional theory (DFT)) fail. The electronic wave function (WF) is obtained by applying a Jastrow factor, which takes into account dynamical correlations, to the most general mean-field ground state, written either as an antisymmetrized geminal product with spin-singlet pairing, or as a Pfaffian, including both singlet and triplet correlations. This wave function can be viewed as an efficient implementation of the so-called resonating valence bond (RVB) ansatz, first proposed by L. Pauling and P. W. Anderson in quantum chemistry and condensed matter physics, respectively. The RVB ansatz implemented in TurboRVB has a large variational freedom, including the Jastrow correlated Slater determinant as its simplest, but nontrivial case. Moreover, it has the remarkable advantage of remaining with an affordable computational cost, proportional to the one spent for the evaluation of a single Slater determinant. Therefore, its application to large systems is computationally feasible. The WF is expanded in a localized basis set. Several basis set functions are implemented, such as Gaussian, Slater, and mixed types, with no restriction on the choice of their contraction.

The code implements the adjoint algorithmic differentiation that enables a very efficient evaluation of energy derivatives, comprising the ionic forces. Thus, one can perform structural optimizations and molecular dynamics in the canonical NVT ensemble at the VMC level. For the electronic part, a full WF optimization (Jastrow and antisymmetric parts together) is made possible thanks to state-of-the-art stochastic algorithms for energy minimization. In the optimization procedure, the first guess can be obtained at the mean-field level by a built-in DFT driver

Current Stage and Next Steps

At present, TurboRVB is under development for exploiting better performances in most European HPC centres. Concomitantly, a special effort is in progress for delivering an understandable and complete user guide as well as for developing efficient tools for an easy and efficient use of the code.