However, I am still unsure of how to specify that I want to run a calculation using GGA and LDA approximation in the input file.
Quantum ESPRESSO (QE) uses a plain-text input file and consists of the so-called namelists and cards. Inside the required namelist &SYSTEM
, you can set your preferred exchange-correlation (XC) functional by using the keyword input_dft
. For example, a very simple input file might look like this:
&CONTROL
pseudo_dir= './pseudo/'
/
&SYSTEM
ibrav=1
celldm(1)=5
nat=1
ntyp=1
ecutwfc=50
input_dft='PBE'
/
&ELECTRONS
/
ATOMIC_SPECIES
X 0.00000 X.UPF
ATOMIC_POSITIONS crystal
X 0.0000000000 0.0000000000 0.0000000000
K_POINTS automatic
6 6 6 0 0 0
You can replace PBE
with BLYP
or with your preferred type of functionals.
However,
Just because you can do it does not mean you should do it. Care should be taken before using this keyword. First of all, why do you want to specify the type of XC functional? QE can automatically read the XC functional from the pseudopotential (PP) file, i.e., here in the above example X.UPF
. So unless you are treating a very special problem that requires a specific kind of PP or you want to use your own generated PP, you can safely proceed without specifying the type of XC functional (you only need to choose your PP).
Could you please guide me on how to include the appropriate keyword in the input file to specify the exchange-correlation functional?
If you want access to more XC functionals, one such way is using Libxc - which is a library of exchange-correlation and kinetic energy functionals for density-functional theory - please refer to section 2.6 of this document. Take note that depending on the version of your QE, the input_dft
notation is fundamentally different.
!For v7.0 or later
input_dft='XC-000I-000I-101L-130L-000I-000I'
!For earlier versions
input_dft='gga_x_pbe gga_c_pbe'
By using Libxc functionals, you can specify more types of functionals (a complete list is available here). To understand the notation, check the above-linked user manuals.
Also, I would greatly appreciate any advice on how to choose the best functional for my specific system and properties of interest.
As Camps said in the comments that you need to search the literature. There is no one-in-all formula. You can try various types of functional with prototypes of your system before doing actual calculations. From my (very little) experience, people usually stick with the popular XC functional choices. See this question to know about popular functionals.
Just for the sake of completeness, if one wants to use hybrid or non-local functional, the official QE website states:
WHERE CAN I FIND PSEUDOPOTENTIAIS FOR HYBRID/NONLOCAL FUNCTIONALS?
Short answer: nowhere, for the time being. Use pseudopotentials for the non-hybrid functional that is closer to the hybrid you like: PBE for PBE0 and HSE, BLYP for B3LYP. Same for nonlocal (e.g. vdw-DF) functionals: use pseudopotentials generated for the closest GGA functional.