Page 1 of 1

TDDFT+U with Casida vs. time-propagation

Posted: Mon Jul 27, 2026 5:52 pm
by ashwin_r

Hello,

In the context of DFT+U/TDDFT+U, a previous thread noted that the Hubbard U is included only in the ground-state calculations but not in the response function calculation, i.e., it is missing in fxc. This information was from 2021 when only the Casida approach was available to perform TDDFT (as far as I recall).

Seeing that time-propagation (TIMEEV) is available, I would like to clarify whether the Hubbard U can now be included in the TDDFT step, i.e., when updating the Hamiltonian at each time step.

Thanks!


Re: TDDFT+U with Casida vs. time-propagation

Posted: Thu Jul 30, 2026 1:10 pm
by henrique_miranda

Hi,
Yes in principle Hubbard U can be included with TIMEEV.
As a sanity check you can compare the results for the real part of the static dielectric tensor obtained from TIMEEV with the ones obtained with LCALCEPS=.TRUE.
Since U is supported with LCALCEPS the results should match the ones of TIMEEV.


Re: TDDFT+U with Casida vs. time-propagation

Posted: Sun Aug 02, 2026 3:51 am
by ashwin_r

Thanks, Henrique.

BTW, there is a bug in the subroutine XML_EPSILON_E_DIR (file xml.F) that affect the output of the dielectric function for IEPSILON>1. I have documented the fix in the bug-reports forum.


Re: TDDFT+U with Casida vs. time-propagation

Posted: Wed Aug 12, 2026 7:46 pm
by ashwin_r

I have a follow-up question on this front: I am now trying to run a (global) hybrid+U calculation and I am a bit uncertain as to how the Hubbard U potential is handled at the static vs. the time-dependent level.

Specifically, assuming a global hybrid with a fraction AEXX of exact exchange (XX), is the exchange potential calculated as VX=AEXX*VXX + (1-AEXX)*(VDFT+VHubbard) or is it calculated as VX= [AEXX*VXX + (1-AEXX)*VDFT] + VHubbard? In other words, is the Hubbard U contribution added to the semi-local ("DFT") potential before rescaling all of this by (1-AEXX) or is it simply added on as is?

The same question holds for time-propagation (ALGO=TIMEEV). The best I can tell in this case is that the Hubbard U potential is added to the Hamiltonian in SUBROUTINE UPDATE_POTENTIAL (time_propagation.F) but it is not clear to me whether that potential winds up eventually being rescaled by (1-AEXX) or not.


Re: TDDFT+U with Casida vs. time-propagation

Posted: Fri Aug 14, 2026 6:54 am
by henrique_miranda

From reading the code I believe it is the second case:
VX= [AEXXVXX + (1-AEXX)VDFT] + VHubbard
both for DFT and TIMEEV since they use the same machinery inside VASP.

If you want to check it yourself and be sure you can make a matrix of vasp runs:

  1. Prepare a WAVECAR without AEXX or LDAUU
  2. Make a matrix of runs starting from this WAVECAR with ALGO=Eigenval where you scale LDAUU along one axis and AEXX along the other.
    By looking at the eigenvalues you should be able to tell wether one formula or the other is used.

According to my own testing it is indeed the formula above.


Re: TDDFT+U with Casida vs. time-propagation

Posted: Fri Aug 14, 2026 1:51 pm
by ashwin_r

Thank you for confirming! I will try out the suggested test.