LIBXC1
LIBXC1 = [integer] or [string]
Description: LIBXC1 specifies the exchange or exchange-correlation functional from the library of exchange-correlation functionals Libxc[1][2][3] that one wants to use. If LIBXC1 corresponds to an exchange functional, then it can be used in combination with LIBXC2 for the correlation functional.
N.B.: This feature is available from VASP.6.3.0 onwards that needs to be compiled with -DUSELIBXC.
LIBXC1 and LIBXC2 can be either integers or strings. The available functionals are listed on the Libxc website[4] along with their associated number and tag (e.g., 101 and GGA_X_PBE for PBE exchange). The tag indicates if this is an exchange (X), correlation (C) or exchange-correlation (XC) functional, and to which family it belongs to, namely LDA (LDA or HYB_LDA), GGA (GGA or HYB_GGA) or meta-GGA (MGGA or HYB_MGGA). Note that calculations with laplacian-dependent meta-GGA functionals are not yet possible with VASP.
Libxc is a separate program that has to be downloaded[3] and compiled before VASP is compiled with the corresponding precompiler flag and options.
Important: To get correct results with meta-GGA functionals (see discussion at LTBOUNDLIBXC), it is necessary to use Libxc from version 5.2.0 onwards (or the master version) and to compile it with the option --disable-fhc as explained here.
|
The allowed possibilities for LIBXC1 and LIBXC2 are the following:
- Both LIBXC1 and LIBXC2 are specified and correspond to exchange and correlation functionals, respectively.
- Only LIBXC1 is specified and corresponds to an exchange or exchange-correlation functional. Note also that if LIBXC1 is an exchange-correlation functional, then LIBXC2 can not be used.
- LIBXC1 and LIBXC2 can correspond to functionals of different families, e.g., a meta-GGA and a GGA, respectively.
Regarding other tags in INCAR related to Libxc:
- One also has to specify GGA = LIBXC for LDA, GGA and GGA-based hybrid functionals or METAGGA = LIBXC for meta-GGA functionals (calculations with meta-GGA-based hybrid functionals are not yet possible with VASP). Note that if one of the tags (LIBXC1 or LIBXC2 ) corresponds to a meta-GGA, while the other corresponds to a GGA or LDA, then METAGGA = LIBXC (and not GGA = LIBXC) has to be specified.
- Many of the functionals implemented in Libxc have parameters that can be modified. This can be done via the tags LIBXC1_Pn and LIBXC2_Pn, where .
- The tag LTBOUNDLIBXC, which is .FALSE. by default, allows to enforce the lower bound on the kinetic-energy density () with before is used in a meta-GGA functional from Libxc.
For calculations with hybrid functionals (i.e., when LHFCALC = .TRUE.), the following provides some explanations:
- The Libxc functionals whose tag starts with HYB_LDA_XC, HYB_GGA_XC or HYB_MGGA_XC (not yet usable with VASP) consist directly of the whole (XC) semilocal component of a hybrid functional. For these functionals AGGAX, AGGAC and ALDAC can not be used (more informations on how to modify the mixing and screening parameters can be found here LIBXC1_Pn).
- The Libxc functionals whose tag starts with HYB_GGA_X or HYB_MGGA_X (not yet usable with VASP) consist of the exchange semilocal component of a hybrid functional. For these functionals AGGAX can not be used (more informations on how to modify the mixing and screening parameters can be found here LIBXC1_Pn).
- If the semilocal component of the hybrid functional is constructed using Libxc functionals that do not contain HYB in the tag, then (1-AEXX), AGGAX, ALDAC and AGGAC will be used and multiply
- respectively, where and .
Examples of how to specify a Libxc functional in INCAR are given below for the GGA PBE[5], meta-GGA SCAN[6] and hybrid PBEh (PBE0)[7] functionals.
- PBE
GGA = LIBXC LIBXC1 = 101 LIBXC2 = 130
or
GGA = LIBXC LIBXC1 = GGA_X_PBE LIBXC2 = GGA_C_PBE
- SCAN
METAGGA = LIBXC LIBXC1 = 263 LIBXC2 = 267
or
METAGGA = LIBXC LIBXC1 = MGGA_X_SCAN LIBXC2 = MGGA_C_SCAN
- PBEh (PBE0)
LHFCALC = .TRUE. AEXX = 0.25 GGA = LIBXC LIBXC1 = 406
or
LHFCALC = .TRUE. AEXX = 0.25 GGA = LIBXC LIBXC1 = HYB_GGA_XC_PBEH
Related Tags and Sections
LIBXC2, LIBXC1_Pn, LIBXC2_Pn, LTBOUNDLIBXC, GGA, METAGGA, LHFCALC, AEXX, AGGAX, AGGAC, ALDAC, hybrid functionals, settings for specific hybrid functionals
References
- ↑ M. A. L. Marques, M. J. T. Oliveira, and T. Burnus, Comput. Phys. Commun., 183, 2272 (2012).
- ↑ S. Lehtola, C. Steigemann, M. J. T. Oliveira, and M. A. L. Marques, SoftwareX, 7, 1 (2018).
- ↑ a b https://libxc.gitlab.io
- ↑ https://libxc.gitlab.io/functionals/
- ↑ J. P. Perdew, K. Burke, and M. Ernzerhof, Phys. Rev. Lett., 77, 3865 (1996).
- ↑ J. Sun, A. Ruzsinszky, and J. P. Perdew, Phys. Rev. Lett. 115, 036402 (2015).
- ↑ C. Adamo and V. Barone, Phys. Rev. Lett., 110, 6158 (1999).