Research code dump!
I’ve finally gotten around to cleaning up my home-brewed research code (at least a little bit), and I’ve hosted it here on my GitHub. I’m calling the project pyqchem
, and it contains Hartree Fock, MP2, coupled cluster and a smattering of excited state methods. I’d love it if you check it out!
You’ll notice that I still don’t have a way of reading in molecular geometry and basis set, and so I am still reliant on parsing G09 outputfor the atomic orbital integrals. Oh well, it’s a future project :) I’d also love to learn how to make it object oriented, as well as optimize the lower level routines in C/C++
. It is so far far from optimized right now it is ridiculous. I think my EOM-CCSD code scales as N^8 instead of N^6, just because I haven’t factored the equations right. But it works, and it has helped me learn so much about electronic structure methods. If you get the chance to look at it, I would love input for the future. I’m still developing as a programmer and I could use all the help I can get!
I hosted a lot of premade molecules (and their AO integrals), so all you have to do is execute pyqchem.py
followed by the folder of interest.
For example:
Would execute the pyqchem.py
script on the folder h2_3-21G
, which contains all the precomputed atomic-orbital basis integrals. The type of calculation is changed by editing the pyqchem.py
script itself. Say I wanted to perform an MP2 calculation on H2 in a 3-21G basis. I open pyqchem.py
, and edit at the top:
Then run:
And you’ll see the pretty output dump to your terminal :)
That’s all there is to it! Enjoy!