Closed SimonBoothroyd closed 3 years ago
Looks great @SimonBoothroyd! Thank you for putting this together!
I think this covers all the bases, and I prefer the simplicity of running one optimization at a time with config
settings indicating how many threads and how much memory is available to the program running the gradient calculations.
I think we should press forward with this. Would you like to create a test next?
Thanks @dotsdl - tests added in 4a68fe9.
It looks like the failures are mostly un-related. I'm not sure why test_geometric_generic
is now failing - my guess is that the two entries of this test have always been skipped due to missing dependencies, and now that the dependencies (i.e. geometric + openmm) are present the test is actually being run but failing due to bad expected values.
Agree with you @SimonBoothroyd that the errors we see in the tests are unrelated to the changes introduced by this PR. I wouldn't consider those blocking for merge of this feature.
@loriab, is there anything additional you would like to see before merging this? This functionality simplifies execution of torsiondrives by QC* users substantially, and I'm eager to get it into the library!
Thanks @loriab - I've made the changes you suggested and have opened up an initial PR for adding the models to QCElemental here https://github.com/MolSSI/QCElemental/pull/268 where we can maybe discuss them in a bit more detail.
qcel 0.22 ready with the models this PR needs
Thanks @loriab ! These should be integrated in ff41b75.
As far as I can tell this should be G2G now (cc @dotsdl @bennybp)
Performing final review with aim to merge.
Merged! Thank you @SimonBoothroyd for this!
Description
This PR implements an initial proof of concept
torsiondrive
procedure as outlined in issue #306.There are a number of questions about this PR:
As
qcelemental
does not have native models for torsion drives I created some here based off of the QCElemental optimisation models and the QCPortal torsion drive models. Are these something that could / should live in QCElemental?Is it more efficient to run multiple torsion drives at once, each with access to one core, or one torsion drive at once using all of the cores.
If the QCE maintainers would be happy to accept a PR similar to this I'd be happy to add an example / tests here.
An example input would look like:
Closed #306
Changelog description
Adds a new
torsiondrive
compute procedureStatus