We know that both Quantum ESPRESSO and VASP can perform lots of different kinds of simulations of materials. But what can VASP do that Quantum ESPRESSO can not, and vice-versa?


There is another (good) answer, and since I can't comment yet I will add a few things, possibly from a different perspective as someone who uses QE more often.

In general, QE is a free (GPL 2.0), open source code, and that comes with some advantages. New methods can be implemented relatively quickly. If you will be using DFT+U, QE has hp.x, for calculating Hubbard U values from first principles using density functional perturbation theory (see Phys. Rev. B 98, 085127). To my knowledge VASP does not have this capability. And QE DOES implement forces and stresses using DFT+U when using the "simplified" rotationally-invariant formulation (which is default), but you are limited in the choice of orbital for the projection to either atomic wavefunctions or the pseudopotential projectors. In general though, you are not limited to ortho-atomic orbitals--there are a few options, and you can also provide your own generated wavefunction files (i.e. from Wannier codes) for the projection.

QE also has some interesting methods for boundary conditions and periodicity, such as using the effective screening method (Phys. Rev. B 73, 115407) for polarized/charged slab calculations. Again, to the best of my knowledge, VASP can only apply dipole corrections in this case (which QE can also do).

The advantages of VASP that stick out the most to me are the handling of hybrid functional calculations, and slightly fewer restrictions on the types of calculations you can do (though not true with simplified DFT+U, there are indeed situations in QE where you don't have forces or stresses implemented yet). It's been reported that VASP shows better scaling for parallel computation but this may just be in systems with many electrons, and was on a much older version of QE (and may no longer be true). QE is also improving its treatment of hybrid functionals (the speedup from the ACE algorithm is significant, and finally ultrasoft and PAW pseudopotentials can be used). I would not say that in general, VASP is faster, though it may be in some particular cases.

I'll finish by just quickly mentioning pseudopotentials. Techically this isn't something one code can do that the other can't, but I thought this is important to clarify. It is true that VASP uses PAW by default, and has a fairly well-tested set of pseudopotentials for most elements. However, while QE doesn't include pseudopotentials by default, I would not say that most users typically use "slow" norm-conserving pseudopotentials, nor is the situation some "wild west" of unreliability. A widely used set (PSLibrary) comes in both PAW and ultrasoft versions. The Materials Cloud project has compiled a set of pseudopotentials from many sources to give the lowest errors vs. all-electron calculations, while prioritizing either efficiency (lower cutoffs) or accuracy. And new "ONCV" norm-conserving pseudopotentials (Phys. Rev. B 88, 08511) are almost as soft as ultrasoft and PAW (see pseudo-dojo.org).

If I were deciding which code to use, it would strongly depend on what specific types of calculation I want to do, though I admit both codes have a lot of capabilities and its quite difficult to keep track of everything. Sometimes the professor or research group you work in is simply more familiar with a certain code, so you use that!

| cite | improve this answer | |
  • $\begingroup$ +100. Excellent first answer and welcome to the site! We hope to see more of you !!! $\endgroup$ – Nike Dattani May 21 at 14:34

I will try my best to delineate the differences between VASP and Quantum Espresso, specifically, how one has an edge over the other in certain aspects. I will not try to explain the similarities between the codes because the original post is not concerned with it. I will also not focus on integration of these softwares with GPUs etc as it is not my area of expertise. I will however, state two common denominators between the two codes (if it helps comparison with other ab-initio packages) - The use of a plane-wave basis set and the fact that they rely on periodic boundary conditions.

  1. Pseudopotentials : VASP by default uses Projector-augmented wave (PAW) Pseudopotentials. These PPs are very well tested and have much lower cutoffs than typical Norm-conserving pseudopotentials (NCPPs) used in Quantum Espresso. Without practically any loss in accuracy, VASP is usually much quicker than QE for Kohn-Sham DFT calculations. Meanwhile, QE by itself doesn't provide PPs for calculations. They do refer good resources that enable implementations of NCPPs, PAWs, USPPs (ultra-soft) etc. I believe that VASP also has some USPP support, but these were historically inaccurate.

  2. Community: QE is open-sourced and has a much more responsive, active user community (Refer: quantum espresso user forums). Their mailing archives date back to more than a decade, hence it is much easier to diagnose any problems in your calculations in QE.

  3. Hybrid functional calculations: It is well known that Kohn-Sham DFT underestimates bandgap. Many hybrid functionals are available in a variety of ab-initio softwares. From my personal experience,I have found that implementation of the hybrid functionals (HSE, in particular) is easier in VASP. QE does have some tutorials on implementing hybrid functionals but I've found it harder to implement with increasing complexity of the system - Also, HSE calculations on QE incur so much more computing time - typically 100x(time taken for non-hybrid calculations). If you want to calculate band structures, it gets even more complicated because you need to generate Maximally Localized Wannier functions (MLWFs). The MLWF code is well optimized for QE but its implementation is difficult unless you know exactly what you are doing.

  4. I've found that VASP provides a lot more options when it boils down to certain nuances. For example, QE doesn't let you calculate the dipole matrix element (crucial for studying optical transitions) if you include the hubbard 'U' or Spin-orbit coupling. VASP can do both. Also, in QE, you cannot calculate the forces in relaxation procedures if you include the hubbard 'U'. But I do have to remind you that you could technically modify the QE code to serve these purposes. Although, this is very difficult to do unless you know the exact physics behind it and also have a sound grasp of coding it.

  5. I've found VASP to be more user-friendly in certain situations. Although QE has descriptions of its various executable files, some outputs generated can be off-putting and very hard to read, to a new user. For example, the dipole matrix elements (from Fermi's golden rule) printed in QE are very hard to read for a beginner. I personally had to go back to the code of the executable file and decrypt in which order the bands were printed in the output. Again, the user forums for QE are very helpful, but my point circles back to better documentation and interface available in VASP.

  6. Implementation of the Hubbard 'U': In QE the projections are done on ortho-atomic orbitals while in VASP, it is done on beta projector functions. This is to point out that there are subtleties between the two codes that do not unequivocally tell you which one is 'better'.

  7. Implementation of Spin-orbit coupling (SOC): In QE, only non-collinear spin-orbit coupling calculations are permitted which is not the case in VASP.

  8. Although one typically doesn't use VASP or QE for post-Hartree Fock processes (chemists typically turn to softwares like Gaussian), VASP has this provision whereas QE does not.

In conclusion, there is no stand-out software that is 'better' than the rest. VASP and QE along with other ab-initio softwares are not fundamentally disparate. If one were to set out to learn ab-initio modeling, I would suggest weighing out the myriad factors.

| cite | improve this answer | |
  • 3
    $\begingroup$ +100. Excellent first answer and welcome to the site! We hope to see more of you !!! $\endgroup$ – Nike Dattani May 21 at 2:00
  • 2
    $\begingroup$ Thank you @NikeDattani ! Just discovered this community! $\endgroup$ – Xivi76 May 21 at 3:35
  • $\begingroup$ Point 1 is a bit misleading, since the vast majority of QE calculations use ultrasoft potentials rather than norm-conserving ones. QE does have recommended pseudopotential libraries too, and they generally perform well, e.g. molmod.ugent.be/deltacodesdft. $\endgroup$ – Phil Hasnip Nov 16 at 12:14
  • $\begingroup$ Point 3: you need to be careful comparing non-local functionals in VASP with other implementations. VASP implements a number of additional approximations to accelerate its non-local functional calculations (e.g. PRECFOCK settings), and you need to check whether you are doing the same calculation with the two codes. $\endgroup$ – Phil Hasnip Nov 16 at 12:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.