How to cite vibe-qc

If you use vibe-qc in published work, please cite it. The repository ships a CITATION.cff file at the root that GitLab and citation managers (Zotero, Mendeley, the Sphinx-rendered “Cite this software” button on the repository page) parse automatically. This page expands what to cite in addition to the vibe-qc software itself, depending on which features you used.

Every run emits its own bibliography

As of v0.8.x every run_job call writes a complete {stem}.bibtex and {stem}.references sibling file, plus a ## References block at the bottom of {stem}.out. The runtime walks the same set of papers listed here and assembles them in the right order for the specific functional / basis / dispersion / library combination your job exercised. The bundled citation database is the single source of truth.

In other words: you should not normally need to hand-cite from this page. Open the .bibtex next to your .out, drop it into your manuscript’s bibliography, and \cite{} the entries by their bibtex_key. The tables below remain as a backup for users on older vibe-qc versions and for ad-hoc citations outside run_job.

The software itself

Always cite this. APA-style:

Peintinger, M. F. (2026). vibe-qc: a quantum-chemistry code for molecules and solids (version 0.9.1) [Software]. Mozilla Public License 2.0. https://vibe-qc.com/

BibTeX:

@software{peintinger_vibeqc_2026,
  author  = {Peintinger, Michael F.},
  title   = {{vibe-qc}: a quantum-chemistry code for molecules and solids},
  year    = {2026},
  version = {0.9.1},
  license = {MPL-2.0},
  url     = {https://vibe-qc.com/},
}

A vibe-qc-specific peer-reviewed publication is planned once a tagged release covers a publishable scope. Until then, the software citation above is the canonical reference.

When you use the pob-TZVP basis sets

The pob-TZVP, pob-DZVP-rev2, and pob-TZVP-rev2 basis sets bundled with vibe-qc were developed by the project author and collaborators. The references below are rendered from the citation database — the same source run_job walks to assemble each job’s .bibtex sibling. Edit python/vibeqc/output/citations/database.toml to update them; the docs follow.

The originating paper (covers pob-TZVP):

Peintinger, Michael F., Vilela Oliveira, Daniel, and Bredow, Thomas (2013). Consistent Gaussian basis sets of triple-zeta valence with polarization quality for solid-state calculations. Journal of Computational Chemistry, 34(6), 451–459. doi:10.1002/jcc.23153

The revised (-rev2) variants extend coverage to heavier elements:

Vilela Oliveira, Daniel, Laun, Joachim, et al. (2019). BSSE-correction scheme for consistent Gaussian basis sets of double- and triple-zeta valence with polarization quality for solid-state calculations. Journal of Computational Chemistry, 40(27), 2364–2376. doi:10.1002/jcc.26013

Or, equivalently — render whichever set of papers the runtime would cite for a specific basis-set name:

Peintinger, Michael F., Vilela Oliveira, Daniel, and Bredow, Thomas (2013). Consistent Gaussian basis sets of triple-zeta valence with polarization quality for solid-state calculations. Journal of Computational Chemistry, 34(6), 451–459. doi:10.1002/jcc.23153

Vilela Oliveira, Daniel, Laun, Joachim, et al. (2019). BSSE-correction scheme for consistent Gaussian basis sets of double- and triple-zeta valence with polarization quality for solid-state calculations. Journal of Computational Chemistry, 40(27), 2364–2376. doi:10.1002/jcc.26013

When you use DFT (any functional)

vibe-qc evaluates exchange-correlation functionals via libxc. Please cite the libxc paper:

Lehtola, S., Steigemann, C., Oliveira, M. J. T., & Marques, M. A. L. (2018). Recent developments in libxc — A comprehensive library of functionals for density functional theory. SoftwareX, 7, 1–5. doi:10.1016/j.softx.2017.11.002

You should also cite the specific functional you used (e.g. PBE, B3LYP, ωB97X-D) — see the libxc documentation for per-functional references.

When you use Gaussian integrals (any HF / DFT / MP2 calculation)

All Gaussian integrals are evaluated via libint. The standard libint citation is:

Valeev, E. F. Libint: A library for the evaluation of molecular integrals of many-body operators over Gaussian functions. Available at https://github.com/evaleev/libint.

When you use D3(BJ) dispersion

D3(BJ) corrections via the dftd3 interface require:

Grimme, S., Antony, J., Ehrlich, S., & Krieg, H. (2010). A consistent and accurate ab initio parametrization of density functional dispersion correction (DFT-D) for the 94 elements H-Pu. J. Chem. Phys., 132, 154104. doi:10.1063/1.3382344

Grimme, S., Ehrlich, S., & Goerigk, L. (2011). Effect of the damping function in dispersion corrected density functional theory. J. Comput. Chem., 32(7), 1456–1465. doi:10.1002/jcc.21759

When you use crystal-symmetry detection

vibe-qc’s spacegroup detection wraps spglib:

Togo, A., & Tanaka, I. (2018). Spglib: a software library for crystal symmetry search. arXiv:1808.01590. https://arxiv.org/abs/1808.01590

Conceptual / methodological references

The Cyclic Cluster Model that the v2.x roadmap builds on is rooted in the project author’s PhD work:

Peintinger, M. F., & Bredow, T. (2014). The cyclic cluster model at Hartree-Fock level. Journal of Computational Chemistry, 35(11), 839–846. doi:10.1002/jcc.23550 (Free Access — cover article for the issue.)

This paper does not need to be cited for routine vibe-qc use today (the CCM features are pending v2.x), but it’s the right reference if you want to cite the methodological lineage.

Quick chooser

What you used

Cite

Any vibe-qc calculation

The software itself (CITATION.cff)

pob-TZVP / pob-DZVP-rev2 / pob-TZVP-rev2

+ Peintinger 2013 (and 2019 for -rev2)

DFT (any functional)

+ libxc + functional reference

HF / DFT / MP2 (i.e. integrals)

+ libint

D3(BJ) dispersion

+ Grimme 2010 + 2011

Periodic system

+ spglib (symmetry)

Future v2.x CCM work

+ Peintinger 2014

For DFT runs in particular, the table above only lists the families the bundled database covers as of v0.8.0 on main. If you used a functional with no route (e.g. a libxc id passed directly), the runtime emits a # no citation route for functional 'foo' warning into the .references file — that is the cue to add an entry to database.toml in your PR or to look up the matching paper by hand.