Skip to content

k2y — Koopmans to Yambo

k2y converts Koopmans Functionals eigenvalues from kcw.x (Quantum ESPRESSO) into Yambo-compatible quasiparticle databases (ndb.QP), enabling BSE optical-spectrum calculations without the cost of a GW run.

PyPI version Build Status Docs status



What does k2y do?

A standard many-body perturbation theory workflow for optical properties looks like:

DFT (pw.x) → GW (yambo) → BSE (yambo)

Koopmans Compliant (KC) functionals provide quasiparticle-quality band structures at DFT cost. k2y bridges the two codes so you can replace the expensive GW step:

DFT (pw.x) → Koopmans (kcw.x) → k2y → BSE (yambo)

Internally, k2y:

  1. Reads the Yambo ns.db1 database (KS eigenvalues, k-point grid, symmetries)
  2. Loads KC eigenvalues from the kcw.x output
  3. Maps k-points between the two grids, expanding from the irreducible BZ to the full one
  4. Writes a ndb.QP file that Yambo reads as QP corrections during a BSE run

How to cite

If you use k2y in your research, please cite:

M. Bonacci et al., Leveraging Koopmans spectral functionals for exciton characterization in materials, (in preparation).

Acknowledgements

Development of k2y was supported by the MARVEL National Centre of Competence in Research.