openff-evaluator icon indicating copy to clipboard operation
openff-evaluator copied to clipboard

EquilibrationLayer does not always properly short-circuit when equilibrated boxes are already found

Open lilyminium opened this issue 7 months ago • 0 comments
trafficstars

Describe the bug

The EquilibrationLayer is supposed to short-circuit if an equilibrated box is already found, by having the check_existing_data protocol raise an exception. This is supposed to turn off the next protocol in the chain, building a box with packmol.

However, on a production-level to check this behaviour, this doesn't always happen. In the particular run I'm seeing, the check_existing_data protocol correctly raises an exception, but the rest of the equilibration protocols continue to execute. This affected 4 out of 857 properties, or 0.4%, which may explain why I didn't see these in smaller tests.

I'm not sure why this is happening. Possibly the protocol is exiting too fast and the default data_missing should be False, although this could be more dangerous in that a property is marked as equilibrated when it isn't. As it is, the current issue doesn't do much except waste computational resources.

To Reproduce

Output

Computing environment (please complete the following information):

  • Operating system
  • Output of running conda list

Additional context

lilyminium avatar Mar 31 '25 04:03 lilyminium