Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SUGGESTION] Add a TorsionDrive procedure #306

Closed
SimonBoothroyd opened this issue Jul 5, 2021 · 0 comments · Fixed by #305
Closed

[SUGGESTION] Add a TorsionDrive procedure #306

SimonBoothroyd opened this issue Jul 5, 2021 · 0 comments · Fixed by #305

Comments

@SimonBoothroyd
Copy link
Contributor

Is your feature request related to a problem? Please describe.

It would be useful to be able to run torsion drives using TorsionDrive via QCEngine directly rather than needing to spin-up a snowflake instance. Use cases include:

  • running one-off / small batches of torsion drives that don't require the full QCF machinery, including avoiding the need to spin-up postgre background services which can occasionally fail to spawn in certain compute environments (e.g. on a locked down HPC cluster)

  • debugging failed torsion drives - it would be good to be able to validate that a torsion drive can run outside of the QCF machinery to isolate whether a TD is problematic or if there is an issue with the QCF machinery itself (i.e. the dreaded INCOMPLETE status)

Describe the solution you'd like

It would be useful to have a new TorsionDriveProcedure (referring to TorsionDrive the program, not torsion drive the process) that can be called via compute_procedure(input_data, procedure="torsiondrive"), and that under the hood calls out to the main optimisation procedures (e.g. geometric) via nested calls to compute_procedure.

I have a proof of concept implementation working in PR #305 if people have any thoughts on this. (cc @dotsdl @bennybp @loriab)

Describe alternatives you've considered

Add this functionality to a separate package, however QCEngine would seem to be a better home for it.

Additional context

Implementing this feature would likely benefit from the discussion in MolSSI/QCElemental#264 as one could more easily define an optimisation specification for a torsion drive input without needing to a priori provide a molecule instance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant