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

Problems with host-guest calculations -- paprika #250

Closed
jeff231li opened this issue Jun 25, 2020 · 10 comments
Closed

Problems with host-guest calculations -- paprika #250

jeff231li opened this issue Jun 25, 2020 · 10 comments
Assignees
Labels
bug Something isn't working

Comments

@jeff231li
Copy link
Collaborator

I'm having some issues when running HG calculations with the paprika_integration branch separate from issue #224 and I don't think I have the necessary expertise to fix these bugs (I don't understand dask).

Issue 1

With commit aef4e06 the calculation for releasing the host restraints is only performed once. Before this, the release calculations were repeated for each HG system (redundant). Basically, when I run the calculations on a cluster evaluator is only successful in calculating one HG system while the rest fails to run. I also tried running this locally, and the log file shows that it is failing when evaluator is trying to add the energies from the different phases (add_per_orientation_free_energies). evaluator spits out the following error:

13:02:34.874 INFO     Exceptions were raised while executing batch d553ea07ca164dd79b3030e6f60fb860
13:02:34.874 INFO     e4ed6f0a0fa44553901012448561208e|add_per_orientation_free_energies_0 failed to execute.

Traceback (most recent call last):
  File "/home/openff-evaluator/openff/evaluator/workflow/protocols.py", line 1245, in _execute_protocol
    protocol.execute(directory, available_resources)
  File "/home/openff-evaluator/openff/evaluator/workflow/protocols.py", line 704, in execute
    self._execute(directory, available_resources)
  File "/home/openff-evaluator/openff/evaluator/protocols/miscellaneous.py", line 49, in _execute
    self.result += value
TypeError: unsupported operand type(s) for +=: 'UndefinedAttribute' and 'UndefinedAttribute'

So... the directory for the host-only calculation is not funneled properly to the workers, hence the add_per_orientation_free_energies protocol is failing?

Issue 2

This problem is more subtle as there is no error printed by evaluator. When I run the HG calculations without the commit mentioned above (i.e. aef4e06) the program will run as expected. However, when analyzing the free-energies I noticed that the results (off-v1.2.0_bcd.zip) for bcd-m4t and bcd-m4c are exactly the same (-5.710330040754208 +- 0.6205644212487271 kcal/mol). I tried running the commands below inside the worker-logs directory

  • grep m4t *
  • grep m4c *

and found that nothing was returned for the m4c case. Thus, evaluator is only calculating the bcd-m4t system but is assigning the results it calculated for this system to bcd-m4c. Is this a bug with the task graph in evaluator?
(Note: I did not observe any duplicate results with calculations I did at the start of 2020)

@SimonBoothroyd
Copy link
Contributor

Hi @jeff231li,

Thanks for raising these issues! I'll try and take a look later today or if not early next week.

@dotsdl
Copy link
Member

dotsdl commented Jul 1, 2020

I will take this on. Working with @jeff231li on this now.

@dotsdl dotsdl self-assigned this Jul 1, 2020
@dotsdl dotsdl added the bug Something isn't working label Jul 1, 2020
@SimonBoothroyd
Copy link
Contributor

Issue 2 should now be fixed by #254 once merged into the paprika_integration branch - a big thanks for reporting this! Luckily it doesn't seem to have affected things other than the paprika binding affinity calculations.

I'm looking into Issue 1 now.

@SimonBoothroyd
Copy link
Contributor

It is possible that Issue 1 was actually caused by the same bug as Issue 2 - I would recommend updating the paprika branch to master and testing again.

@jeff231li
Copy link
Collaborator Author

@SimonBoothroyd thank you for looking into this. I'll do the update to the paprika branch and run another set of calculations. Will get back to you shortly.

@jeff231li
Copy link
Collaborator Author

So far so good, all of the HG systems are running as well as the host-only calculations. Hopefully, evaluator will report the results for the bcd-m4t and bcd-m4c systems properly. Will report back when the calculations are done.

@jeff231li
Copy link
Collaborator Author

I checked the results and all of the values (attach-pull-release) summed up correctly. Also, evaluator now calculates the bcd-m4t and bcd-m4c systems properly. Thanks @SimonBoothroyd for fixing this bug.

host  guest fe (kcal/mol) sem (kcal/mol)
bcd ben -1.54 0.67
bcd cbu -2.34 0.68
bcd chp -5.14 0.67
bcd coc -6.57 0.81
bcd cpe -2.59 0.62
bcd ham -2.70 0.68
bcd hep -3.37 0.78
bcd hex -2.13 0.66
bcd m4c -4.28 0.62
bcd m4t -4.72 0.62
bcd mch -5.01 0.64
bcd mha -2.90 0.64
bcd mo3 -2.52 0.74
bcd mo4 -3.90 0.76
bcd mp3 -2.31 0.71
bcd mp4 -1.97 0.67
bcd oam -4.01 0.64
bcd pb3 -4.16 0.78
bcd pb4 -4.80 0.79
bcd pha -3.50 0.70
bcd pnt -2.15 0.68

@SimonBoothroyd
Copy link
Contributor

Great to hear! And thanks for raising the issue - this could have caused some nasty scientific issues in a number of different places had it not been caught!

@SimonBoothroyd
Copy link
Contributor

Feel free to re-open this issue if any more problems pop up.

@dotsdl
Copy link
Member

dotsdl commented Jul 6, 2020

Awesome, thank you @SimonBoothroyd and @jeff231li! I'm happy that this was resolvable!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants