MRSF TDDFT EKT - Open-Quantum-Platform/openqp GitHub Wiki

EKT-MRSF-TDDFT Ionization Potentials and Electron Affinities

OpenQP supports extended Koopmans' theorem (EKT) calculations with MRSF-TDDFT references. Use runtype=ekt in the [input] section and select ionization potentials (IP), electron affinities (EA), or both in the [ekt] section. For the keyword-level documentation, see [EKT]: EKT-MRSF-TDDFT IP/EA Options.

Requirements

  • [input] method=tdhf
  • [input] runtype=ekt
  • [tdhf] type=mrsf
  • A spin-flip reference, typically ROHF with [scf] multiplicity=3
  • At least one of [ekt] ip=True or [ekt] ea=True

EKT is currently available only for MRSF-TDDFT. If runtype=ekt is used with another method or TDHF type, OpenQP reports an input error.

Selecting IP and EA calculations

[ekt]
ip=True
ea=False
  • ip=True: compute ionization potentials.
  • ea=True: compute electron affinities.
  • Set both to True to run both EKT-IP and EKT-EA in one calculation.

Example: EKT-IP for water

[input]
system=
 8   0.000000000   0.000000000  -0.041061554
 1  -0.533194329   0.533194329  -0.614469223
 1   0.533194329  -0.533194329  -0.614469223
charge=0
method=tdhf
basis=6-31g
runtype=ekt
functional=bhhlyp

[guess]
type=huckel
save_mol=False

[scf]
type=rohf
multiplicity=3
conv=1.0e-8
save_molden=False

[tdhf]
type=mrsf
multiplicity=1
nstate=10
conv=1.0e-8
zvconv=1.0e-8

[ekt]
ip=True
ea=False

Example: EKT-EA for water

Use the same MRSF-TDDFT reference settings, but switch the [ekt] options:

[ekt]
ip=False
ea=True

Target states

EKT can be applied to the MRSF-TDDFT response target selected by [tdhf] target. The default target is the ground response state. Set [tdhf] target when an excited-state EKT calculation is intended.

Output

The calculation prints an EKT eigenvalue / binding-energy table for each requested channel:

  • IP runs print MRSF-EKT ionization potentials (Dyson eBEs).
  • EA runs print MRSF-EKT electron affinities.

Each table includes the EKT eigenvalue, electron binding energy in Hartree and eV, metric value, and Dyson pole strength. The log also prints root-character diagnostics and MO-basis Dyson orbital coefficient blocks. The final JSON output stores structured data under mrsf_ekt, including eigenvalues_hartree, ebe_ev, pole_strengths, and dyson_orbitals_mo. When both IP and EA are requested in one runtype=ekt job, per-channel snapshots are preserved under mrsf_ekt["ip"] and mrsf_ekt["ea"].

Legacy input style

Older development inputs used tdhf.type=mrsf_ekt_ip or tdhf.type=mrsf_ekt_ea with runtype=energy. The preferred user-facing workflow is now:

[input]
runtype=ekt
method=tdhf

[tdhf]
type=mrsf

[ekt]
ip=True
ea=True

Back to Example Input Files