MolSSI / QCEngine

Quantum chemistry program executor and IO standardizer (QCSchema).
https://molssi.github.io/QCEngine/
BSD 3-Clause "New" or "Revised" License
163 stars 78 forks source link

Refactor torsiondrive for easy parallel subclass #351

Closed jthorton closed 2 years ago

jthorton commented 2 years ago

Description

This PR refactors the running of the optimizations for the torsiondrive procedure into a function that can be easily overridden by users who would like to implement a parallel version. This avoids users having to deal with the inner workings of the torsiondrives and can instead focus on the distribution of the optimization tasks.

Changelog description

The torsiondrive procedure has been refactored to make it easier for users to implement a parallel version via subclassing and overwriting the _spawn_optimizations method.

cc @SimonBoothroyd

Status

codecov[bot] commented 2 years ago

Codecov Report

Merging #351 (f794a53) into master (aeead6f) will increase coverage by 0.00%. The diff coverage is 87.50%.

dotsdl commented 2 years ago

@loriab it looks like Python 3.6 for xtB is blocking us here? Where is the CI running? Does it not exist anymore and need to be removed from required checks?

loriab commented 2 years ago

I remember seemingly removing xtb 3.6 a couple times and GH not being convinced. go ahead and merge when ready, and I'll take another look at required checks tomorrow.

dotsdl commented 2 years ago

Thanks @loriab! Unfortunately I don't have sufficient permissions on this repo to merge without that check. I can't click the merge button. :cry:

loriab commented 2 years ago

Thanks @loriab! Unfortunately I don't have sufficient permissions on this repo to merge without that check. I can't click the merge button. 😢

See if merge clear now, @dotsdl

dotsdl commented 2 years ago

It works! Thanks @loriab!