DFT+U Explained: Correcting Strongly Correlated Systems
Dft Fundamentals

DFT+U Explained: Correcting Strongly Correlated Systems

How DFT+U corrects localized d and f electrons: the Hubbard U, Dudarev vs Liechtenstein, choosing U by linear response, and pitfalls to avoid.

DFT+U Explained: Correcting Strongly Correlated Systems
Photo by NASA on Unsplash · View photo

Run standard GGA on nickel oxide and it will tell you the material is a metal or a tiny-gap semiconductor. NiO is, in fact, a wide-gap antiferromagnetic insulator with a gap around 4 eV. This is not a small numerical error — it is a qualitative failure, and it appears again and again in transition-metal oxides, rare-earth compounds, and other systems with localized d or f electrons. DFT+U is the cheap, widely used correction that fixes it.

This post explains why localized electrons break semilocal DFT, how the Hubbard U correction works and where it comes from, the difference between the Dudarev and Liechtenstein formulations, how to actually choose a value of U, and the pitfalls that catch people who treat U as a knob to twist until the answer looks right.

Why Localized d and f Electrons Break DFT

The root cause is self-interaction error (SIE). In exact DFT, an electron’s spurious Coulomb repulsion with its own charge density is perfectly cancelled by the exchange term. In LDA and GGA that cancellation is incomplete, leaving every electron feeling a residual repulsion from itself.

For delocalized sp electrons this residual is spread thin and does little harm. For localized d and f electrons — confined to a small region around an atom — the self-repulsion is large. Its effect is to penalize localization: the functional artificially lowers the energy of spreading these electrons out, favouring partial, fractional occupations over the integer, localized occupations that are physically correct.

The visible symptoms are systematic:

  • Insulating oxides predicted as metals (NiO, CoO, FeO, MnO).
  • Band gaps drastically underestimated or absent.
  • Magnetic moments too small.
  • Over-delocalized d/f states hybridizing too strongly with oxygen p states.
  • Wrong energetics for reduction/oxidation and for competing charge or orbital orderings.
flowchart TD
  A[Self-interaction error in GGA] --> B[Penalizes localization]
  B --> C[Fractional d/f occupations]
  C --> D[Metallic prediction for NiO etc]
  E[DFT+U on-site penalty] --> F[Push occ down empty up]
  F --> G[Integer occupations restored]
  G --> H[Insulating gap opens]

The Hubbard Model Intuition

The physics DFT+U restores comes from the Hubbard model, the minimal description of correlated electrons on a lattice:

$$ H = -t \sum_{\langle i,j\rangle} \bigl(c_i^\dagger c_j + \mathrm{h.c.}\bigr) + U \sum_i n_{i\uparrow}\, n_{i\downarrow} $$

The first term is hopping (kinetic energy, bandwidth \(t\)); the second is the on-site Coulomb repulsion \(U\), the energy cost of placing two electrons on the same site. When \(U \gg t\), double occupancy is strongly penalized, electrons localize one-per-site, and the system becomes a Mott insulator even though simple band theory predicts a metal. That is exactly the situation semilocal DFT misses. DFT+U grafts this on-site penalty onto standard DFT, but only for the chosen localized orbitals, leaving the delocalized states described by DFT as usual.

How the Correction Works

DFT+U adds a correction term to the total energy that acts on the occupation matrix \(n\) of the localized subspace (the d or f orbitals on the chosen atoms), then subtracts a double-counting term to remove the part of that interaction already present in the underlying functional:

$$ E_{\mathrm{DFT+U}} = E_{\mathrm{DFT}} + E_U[n] - E_{\mathrm{dc}}[n] $$

The net effect on the potential is intuitive: occupied localized states (occupation near 1) are pushed down in energy, and empty ones (occupation near 0) are pushed up. States with unphysical fractional occupation, around 0.5, are penalized the hardest. This opens the gap, restores integer occupations, deepens magnetic moments, and localizes the d/f electrons where they belong — all at essentially the cost of a plain GGA calculation.

Dudarev vs Liechtenstein Formulations

Two formulations dominate, and it matters which one a paper or input file uses.

The Liechtenstein approach keeps \(U\) and the exchange parameter \(J\) as separate, fully anisotropic quantities, applying them through the complete set of Coulomb and exchange matrix elements. It is more general and can capture orbital-dependent effects, but it requires more parameters and is more involved to set up.

The Dudarev approach — by far the more common — combines them into a single effective parameter:

$$ U_{\mathrm{eff}} = U - J $$$$ E_U = \frac{U_{\mathrm{eff}}}{2} \sum_{\sigma} \mathrm{Tr}\bigl[n^\sigma (1 - n^\sigma)\bigr] $$

This penalizes deviation of the occupation eigenvalues from 0 or 1, which is precisely the fractional-occupation error. It is rotationally invariant, needs only one number per atomic species, and is what most people mean when they say “DFT+U”. When you read “U = 4 eV on Ni 3d”, it is almost always Dudarev \(U_{\mathrm{eff}}\).

AspectDudarevLiechtenstein
ParametersSingle \(U_{\mathrm{eff}} = U - J\)Separate \(U\) and \(J\)
AnisotropyIsotropicFull orbital anisotropy
Rotational invarianceYesYes
Setup complexityLowHigher
Typical usageDefault in most studiesSpecialized cases
Reported value\(U_{\mathrm{eff}}\)\(U\), \(J\) individually

Choosing U: Empirical vs Linear Response

The uncomfortable truth is that \(U\) is not universal. It depends on the element, its oxidation state, the local coordination, the pseudopotential, and even the definition of the localized orbitals (the projector). There are two schools of thought on how to pick it.

Empirical / semi-empirical. Choose \(U\) to reproduce a known experimental property — the band gap, the lattice constant, an oxidation energy, or a magnetic moment. Typical published values sit in the range of 3-8 eV for 3d transition-metal oxides and larger for 4f rare earths. This is pragmatic and common, but it risks circularity: fitting \(U\) to the gap and then reporting the gap as a result proves nothing.

Linear-response / first-principles. Cococcioni and de Gironcoli showed \(U\) can be computed from the material itself. Physically, \(U\) measures the energy curvature with respect to localized occupation — the spurious curvature DFT introduces. You apply a small perturbing potential \(\alpha\) to the localized subspace and measure the response of its occupation both with and without allowing the electrons to self-consistently rescreen:

$$ U = \left(\frac{dn}{d\alpha}\right)_{\mathrm{bare}}^{-1} - \left(\frac{dn}{d\alpha}\right)_{\mathrm{scf}}^{-1} $$

This yields a parameter-free, reproducible \(U\) tied to your exact setup. More recently, DFPT-based methods (density functional perturbation theory) compute the same response without the finite-difference supercell machinery, and self-consistent schemes iterate the structure and \(U\) to convergence. Whichever route you take, report the method and the projector definition — a \(U\) value is meaningless without them.

flowchart TD
  A[Choose U] --> B{Method}
  B -->|Empirical| C[Fit to gap / moment / lattice]
  B -->|Linear response| D[Apply alpha perturbation]
  D --> E[Measure dn/d alpha bare and scf]
  E --> F["U = chi_bare^-1 - chi_scf^-1"]
  C --> G[Report value and property fitted]
  F --> H[Report projector and setup]

Worked Examples: NiO and the Oxides

NiO is the canonical case. Plain GGA gives a near-metal with a magnetic moment well below experiment. With Dudarev \(U_{\mathrm{eff}}\) of roughly 4-6 eV on the Ni 3d states, the gap opens to a few eV, the antiferromagnetic insulating ground state is recovered, and the moment approaches the measured value.

Other instructive cases:

  • FeO and CoO — GGA metals, correctly insulating with appropriate \(U\).
  • Cerium oxides (CeO2 / Ce2O3) — the Ce 4f states require \(U\) to describe the Ce(IV)/Ce(III) reduction and the localized f electron in the reduced phase; getting oxygen-vacancy formation energies right depends critically on it.
  • LiFePO4 and battery cathodes — DFT+U is essential for realistic redox voltages, since these come from energy differences between oxidation states of the transition metal.
  • Multiferroics and manganites — orbital and charge ordering depend sensitively on the localized-electron description.

Pitfalls and Best Practices

DFT+U is powerful but easy to misuse. Watch for the following:

  • Comparing energies at different U. Total energies from calculations with different \(U\) values (or \(U\) on different species) are not on the same footing. Never compare formation energies computed with inconsistent \(U\).
  • Metastable states. The occupation-matrix penalty creates multiple local minima with different orbital orderings. DFT+U can get trapped in the wrong one; controlling the initial occupation matrix and comparing candidate orderings is often necessary.
  • Projector dependence. The value of \(U\) is tied to how the localized orbitals are defined (atomic orbitals, Lowdin-orthogonalized, Wannier). A \(U\) transferred from a different projector scheme is simply the wrong number.
  • It only fixes the chosen orbitals. DFT+U does nothing for sp-semiconductor gaps or dispersion; it is not a general band-gap corrector like a hybrid functional.
  • Not a substitute for full many-body theory. For genuinely strong dynamical correlation (heavy fermions, some Mott systems near the transition) you may need DFT+DMFT. DFT+U captures the static, on-site part only.

The Hubbard machinery, linear-response, and DFPT-based \(U\) calculation are all implemented in Quantum ESPRESSO, so a first-principles \(U\) is a standard workflow rather than a research project. For related discussion of gap corrections and where DFT+U sits among them, see our post on the DFT band gap problem and our overview of the computational engines we run.

Run it on Simatra

Computing \(U\) from linear response means running the same system under a series of perturbing potentials, and validating an oxide often means scanning several \(U\) values against experiment — independent jobs that beg to run in parallel. Simatra runs DFT on GPU-accelerated clusters (instance GPU-Opt-V2) with up to 5x faster convergence, handling supercells up to ~2,000 atoms across two computational engines: the open-source Quantum ESPRESSO and Simatra’s native KRONOS, a C++20 GPL-3.0 engine. Run your full \(U\) determination and validation sweep at once, and start with a free trial and $100 in credits at app.simatra.io.