theochem / iodata

Python library for reading, writing, and converting computational chemistry file formats and generating input files.
https://iodata.readthedocs.io/
GNU Lesser General Public License v3.0
131 stars 46 forks source link

Support loading data from Gaussian matrix element files #166

Open tovrstra opened 4 years ago

tovrstra commented 4 years ago

I'm taking this issue from another thread, see #139.

The Matrix Element File from Gaussian 16 seems to be a replacement (to some extent) for the old formatted checkpoint file. See https://gaussian.com/interfacing/ It seems the matrix element file is binary ("unformatted") and architecture dependent, which makes it challenging, still it contains a lot of interesting data. Here are some potentially useful links to parse binary data in Python:

PaulWAyers commented 4 years ago

Seems complicated.

There is a C++ code for reading matrix element files https://urania.chem.washington.edu/chronusq/chronusq_public and also there is a Scipy routine https://docs.scipy.org/doc/scipy/reference/generated/scipy.io.FortranFile.html The Gaussian documentation specific to matrix element files is relevant https://gaussian.com/output/?tabid=1 It's a bit painful, though. We can generate most of what is in this file with gbasis or other methods, so it may be that this is mainly useful for testing or cases where someone wishes to avoid a gbasis dependency.