CCL: Quantum chemistry interoperability library?

 Sent to CCL by: "Tian  Lu" [sobereva(-)]
 It is worth to mention that last year I proposed a new file format (mwfn) for
 wavefunction storage and exchange. Detailed description of this format as
 well as example files are available at
 2021-lt04f-v5. A comparison between different wavefunction formats, including
 wfn, wfx, fch, molden, mkl, NBO.47, is given in the appendix of this
 document. The purpose of defining mwfn format is to provide an ideal format
 for recording wavefunction and transferring wavefunction between different
 quantum chemistry and wavefunction analysis programs. This format has been
 supported by current version of Multiwfn code.
 Currently, a very popular format for storing wavefunction is Molden (input
 file of Molden software), however, there are many limitations or problems,
 for example
 (1) Nuclear charge information is not explicitly recorded. This is quite
 troublesome if pseudopotential is used.
 (2) Matrics (e.g. Fock matrix, density matrix, various integral matrices)
 cannot be recorded, however they are needed in many post-process analyses.
 (3) Cell information cannot be recorded. This makes direct analysis for
 periodic wavefunction infeasible.
 (4) The format is loosely defined, leading to severe compatiblity problems (I
 feel deeply about this point in the process of developing the Multiwfn
 wavefunction analysis code. Molden files produced by many quantum chemistry
 codes were found to be non-standard, making the loading unsuccessful or
 leading to wrong analysis result. I spent a lot of time to make my code
 compatible with molden files produced by as many programs as possible. Also
 due to the loose definition of the molden format, the efficiency of loading
 has been sacrificed to a certain extent for compatibility considerations.)
 (5) Only basis function of angular momentum up to g is formally supported.
 However, today's very high-precision calculations sometimes involve h angular
 (6) Only a single wavefunction can be recorded. Therefore, wavefunctions
 produced during scanning or molecular dynamics have to be recorded
 individually in different files.
 Some of the above issues are not present in the well-known "fch" file,
 the fch file has additional limitations, such as the lack of dedicated fields
 for recording orbital occupation numbers and orbital irreducible
 representations. In addition, fch format often contains many irrelevant
 information. Therefore, in my opinion, fch is also not well-suited as a
 general-purpose format for recording wavefunctions.
 The limitations of existing wavefunction formats have been fully considered
 when defining the mwfn format, hence the various problems mentioned above do
 not exist. Moreover, the mwfn format is clear, concise and human-readable,
 and thus it is fairly easy to write and load. I hope that this format could
 be widely supported by quantum chemistry programs in the future and replace
 the old Molden format.
 Finally, it is worth to note that as mentioned in the document introducing
 the mwfn format, Multiwfn code provides sanity check capability of inputted
 mwfn file. The mwfn file exported by a new code should be able to pass this
 check. Therefore, potential problem of improper normalization and incorrect
 ordering of basis functions in a shell could be easily detected and thus
 fully avoided.
 Best regards,
 Tian Lu
 Beijing Kein Research Center for Natural Sciences