XC input documentation

Initialize exchange-correlation functional.

Used to initialize class qimpy.dft.electrons.xc.XC.

YAML template:

functional: gga-pbe  # Name or list of names of exchange-correlation functionals.
plus-U:              # Optional DFT+U correction:

Component classes:



Type: string or list of string, Default: gga-pbe

Name or list of names of exchange-correlation functionals. Each entry in the list must be one of the internal functionals:

  • gga_pbe

  • gga_pbesol

  • lda_pw

  • lda_pw_prec

  • lda_pz

  • lda_teter

  • lda_vwn

or a Libxc functional name (if available). Run the code with functional: ‘list’ to print the names of available functionals including those from Libxc (and exit immediately). The names are case insensitive, and may use hyphens or underscores.

Additionally, for Libxc functionals, a combined xc name will expand to separate x and c names for convenience, where appropriate. Therefore, ‘gga-pbe’ (default) will use the internal PBE GGA, while ‘gga-xc-pbe’ will use ‘gga_x_pbe’ + ‘gga_c_pbe’ from Libxc.

Finally, each functional name in the list can have an optional “*num” suffix (no spaces) to scale the functional by num. For example, the specification ‘gga-pbe*0.5 lda-pz*0.5’ may be used to compute a 50-50 mix of two functionals. Warning: there is no normalization or check to make the fractions of exchange or correlation to add up to 1.


Type: PlusU, Default: null

Optional DFT+U correction.