cyllab / ccinput

Computational Chemistry Input Generator
https://ccinput.readthedocs.io
BSD 3-Clause "New" or "Revised" License
40 stars 7 forks source link

Added support for Counterpoise calculation in Gaussian with appropria… #5

Closed zarkoivkovicc closed 1 year ago

zarkoivkovicc commented 1 year ago

The input files with the counterpoise correction keyword and fragments can now be created. The syntax is the following: ... --specifications "counterpoise = N fragments = list_of_numbers" ... The N is the number of fragments in the structure, and the list of numbers assigns a fragment to each atom, in the same order as they are in the XYZ file. The code will not allow unreasonable combinations of those two parameters (at least some of them). The 5 appropriate tests are also added. I could not run python setup.py test because this version of the file is not compatible with python 3.10+ (the collectible module is moved to another module or something like that). Nevertheless, I run every group test manually and they all passed. I hope this addition is useful. PS This is my first time contributing to any project, so please check it carefully if you can because I might have messed up something that I am not aware of.

zarkoivkovicc commented 1 year ago

I think I fixed everything, I agree with most of the comments. In the end I opted to parse fragments separately and to treat counterpoise as any other option. It was fun to code this, I hope I will come up with more useful additions when I have more time.

RaphaelRobidas commented 1 year ago

Thanks very much for the contribution!

I forgot to write it in my last comment, but you can run all the tests with the pytest command. It avoids the Python error you got.

I will add some addition ideas from my local notes to the roadmap on Github, under projects. That could give you some ideas of additions in the future. Off the top of my head, IRC calculations would be useful.