To obtain accurate results with ground state Quantum Monte Carlo methods (such as Variational and Diffusion Monte Carlo) an accurate trial wave function is essential. Such a wave function for an electron system will be typically given by the product of two factors: (1) a Jastrow term describing electronic correlations and (2) a Slater determinant of suitable single particle orbitals
where is the vector containing the position of all electrons and is the position of the -th electron. While there is great freedom in the definition of the Jastrow term, that can then be variationally optimized, the single particle orbitals have to be computed in using Density Functional Theory.
The ESPWSCFInterface module provides a derived class of ESInterfaceBase to generate single particle orbitals for QMCPack via a DFT computation performed with Quantum Espresso.
Quantum Espresso can be installed using the module QMCQEPack_qepatch, and the documentation can be found in the Quantum Espresso website https://www.quantum-espresso.org/resources/users-manual.
The ESPWSCFInterface module can be found in the
QMCQEPack branch of the QMCPack git repository
After cloning the repository and checking out the
QMCQEPack branch with
git clone https://github.com/michruggeri/qmcpack.git
git checkout QMCQEPack
one can proceed to download Quantum Espresso and build the
using the QMCQEPack_qepatch module.
Once the library is built one can proceed to build and compile QMCPack, as
detailed in the official QMCPack documentation https://qmcpack.org/documentation, or in the manual available
manual subdirectory in the main QMCPack directory. Note that to use the Quantum Espresso interface the
QE_INTERFACE must be used, typically with
cmake -DQE_INTERFACE=1 -DQMC_COMPLEX=1 <QMCPack base directory>
before compiling with
To use the interface one must use the
qmcqepack keyword in the
determinantset block in a QMCPack input file; further information can be found in Section 22.5.3 of the QMCPack manual, that can be compiled with the files in the
The tests for this code are part of the deterministic unit tests for QMCPack, that can be run with the command
ctest -R interface
Note that the code is tested using the GCC compiler and OpenMPI.
The source code is available available from https://github.com/michruggeri/qmcpack/tree/QMCQEPack in the
QMCQEPack branch. Specifically relevant files for this module include:
and for the tests: