The FCIDUMP format is widely used for the communication of one- and two- body integrals. I wonder what formats are used for 1-/2-RDMs, which are important in many basis rotation or compression tasks.

How is it done in the various mainstream software (MOLCAS, MOLDEN, etc.)?

  • 3
    $\begingroup$ Perhaps not the standard, but Molden seems to have a format for presenting density matrices and decent number of electronic structure programs have interfaces to convert to Molden format. $\endgroup$
    – Tyberius
    Commented Apr 28, 2020 at 21:18
  • 1
    $\begingroup$ I am not familiar with Molden. Do you know any specific link to the RDM formats? Actually, I am thinking if there is no standard one, this discussion group could cook-up one for the community. $\endgroup$ Commented Apr 29, 2020 at 22:40
  • $\begingroup$ I'm actually not either, but I had come across an example page purporting to convert the RDM to Molden format: sourceforge.net/p/janpa/wiki/OrcaExamples $\endgroup$
    – Tyberius
    Commented Apr 29, 2020 at 22:59
  • 1
    $\begingroup$ @Tyberius I've asked people in the community, and there is nothing for RDMs analogous to the FCIDUMP format. Perhaps you could write down the MOLDEN format here? I've asked in the MOLCAS slack group for someone to write the MOLCAS format, but I'm not sure if anyone will answer. I asked some fellow developers of NECI and they recommended not to use NECI's current format and actually recommended to use the MOLCAS format. $\endgroup$ Commented Jun 30, 2020 at 4:35
  • $\begingroup$ Peter Knowles has answered me on Slack, that MOLRPO simply uses FCIDUMP format for 2RDMs. $\endgroup$ Commented Jun 30, 2020 at 15:58

1 Answer 1


1RDMs are just simple matrices, which can be stored in either dense or sparse form, possibly combined with triangular storage (the matrix is often symmetric). 1RDMs are passed around in a number of formats, like Gaussian formatted checkpoint and Molden, and can be visualized for density isosurfaces etc.

2RDMs are a bit more problematic, since they can become very large; because of this it might be that not all programs even store them in full but rather form and process only selected blocks at a time. The 2RDMs also contain more symmetries due to the particle interchanges, e.g. $\Gamma(pq|rs)=-\Gamma(qp|rs)=-\Gamma(pq|sr)=\Gamma(qp|sr)$ or $\Gamma(pq|rs)=\Gamma(rs|pq)$ which means that there may be several choices on how to do this.

However, the assumption here appears to be that the system is so small that all the $O(N^4)$ integrals can be stored. In this case, one might think about using the FCIDUMP format to store the density matrices, too. The original FCIDUMP format doesn't store the Fock matrix, but extended versions do; this means that you should be able to save the 1RDM using a Fock matrix convention and the 2RDM using the two-electron integral convention.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .