Questions on small differences in density matrices and Mulliken populations from CP2K single-point calculation

24 views
Skip to first unread message

Richard李

unread,
Nov 30, 2025, 8:11:04 AM (5 days ago) Nov 30
to cp2k

Dear CP2K Developers,

I am writing to ask for your advice regarding some small but systematic discrepancies I observed in density matrices and Mulliken population analysis obtained from a single‐point calculation performed using CP2K.

In my test for CO, I compared the following files generated from the same single-point SCF calculation:

  1. The MOLDEN file (CO_molopt_smearing-mos.molden-1_0.molden)

  2. The Mulliken file (CO_molopt_smearing-mulliken-1.mulliken)

  3. The largest iteration AO log file (e.g., CO_molopt_smearing-ao-1_0_12.Log)

  4. The 1_0 AO log file (CO_molopt_smearing-ao-1_0.Log)

I found that:

  • The density matrices read from the last AO log file and from the 1_0 AO file differ by approximately 1×10⁻⁷, even though they originate from the same single-point calculation.

  • Constructing Mulliken populations by element-wise multiplication of the density matrix and the overlap matrix (i.e., computing for each pair of atomic orbitals) leads to slightly different values compared to the MULLIKEN NET ATOMIC ORBITAL AND OVERLAP POPULATION MATRIX reported in CP2K’s Mulliken output file.

  • Additionally, when processing the MOLDEN file using Multiwfn, the computed Mulliken bond orders are again slightly different from those obtained directly from CP2K.

Before I proceed further, I would like to confirm:

  1. Are these ~1e−7 differences expected due to formatting, truncation, numerical precision, or different internal representations used when writing the log files, MOLDEN file, and Mulliken file?

  2. Is there a recommended “most reliable” source of the density matrix for reproducing CP2K Mulliken results (Mulliken file vs. AO log file vs. MOLDEN file)?

  3. Are the Mulliken matrices produced by CP2K post‐processed in any additional way (e.g., symmetrization, thresholding) that could explain these differences?

  4. Are there known limitations or differences in the basis function ordering between MOLDEN export and the AO log files?

For reference, I attach (or can provide) the following files:

CO_molopt_smearing.inp
CO_molopt_smearing.out
CO_molopt_smearing-mulliken-1.mulliken
CO_molopt_smearing-mos.molden-1_0.molden
CO_molopt_smearing-ao-1_0.Log
CO_molopt_smearing-ao-1_0_12.Log

Any guidance on how to interpret these discrepancies would be greatly kind of you.  Thank you very much for your time and for your continuous development of CP2K.

Best regards

CO_molopt_smearing-ao-1_0_12.Log
CO_molopt_smearing-mos.molden-1_0.molden
CO_molopt_smearing.inp
CO_molopt_smearing-mulliken-1.mulliken
CO_molopt_smearing-ao-1_0.Log
CO_molopt_smearing.out

Krack, Matthias

unread,
Dec 1, 2025, 4:10:26 AM (4 days ago) Dec 1
to cp...@googlegroups.com
Hi

In a first step, I suggest performing test and comparison again using a much tighter SCF convergence threshold than 5.0E-6, e.g. 1.0E-7 or less.

Best

Matthias

--
You received this message because you are subscribed to the Google Groups "cp2k" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cp2k+uns...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/cp2k/b263b616-bf70-463b-a9e5-7ad8561fa1e7n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages