8000 Disable the barostat during FIRE minimization by hannahbaumann · Pull Request #773 · choderalab/openmmtools · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Disable the barostat during FIRE minimization #773

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

Merged
merged 5 commits into from
Apr 22, 2025

Conversation

hannahbaumann
Copy link
Contributor
@hannahbaumann hannahbaumann commented Mar 27, 2025

Description

As has been described here (#557), box vectors can change during energy minimization using the FIRE minimizer, leading to instabilities. This PR temporarily disables the barostat for the minimization.

Changelog message

 Disable the barostat during FIRE minimization #773 

@hannahbaumann
Copy link
Contributor Author

@ijpulidos @mikemhenry : This seems to be solving the issues with random crashes when starting NPT equilibration after FIRE minimization that I mentioned on Tuesday. On some short test calculations I'm not seeing any crashes.

@@ -2371,7 +2371,7 @@ def __init__(self, timestep=1.0 * unit.femtoseconds, tolerance=None, alpha=0.1,
self.addGlobalVariable("delta_t", timestep.value_in_unit_system(unit.md_unit_system))

# Update context state.
self.addUpdateContextState()
#self.addUpdateContextState()
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed this as I had seen this (openmm/openmm#1237 (comment)), but in test calculations I don't see crashes if we update the context state so this may not be necessary?

@hannahbaumann
Copy link
Contributor Author

Actually, as @jthorton pointed out, removing the self.addUpdateContextState() and setting the pressure to None should both have the same effect, so we could do either!

@mikemhenry
Copy link
Contributor

I like setting the pressure to None as it is a bit more clear IMHO

@mikemhenry
Copy link
Contributor

looks like we have a test that checks that actually FAILED openmmtools/tests/test_integrators.py::test_update_context_state_calls - AssertionError: Integrator 'FIREMinimizationIntegrator' has 0 calls to addUpdateContextState(), while there should be only one.

@mikemhenry
Copy link
Contributor

I can't edit this PR, @hannahbaumann can you check the box described here? https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork

hannahbaumann and others added 2 commits March 31, 2025 09:43
Co-authored-by: Mike Henry <11765982+mikemhenry@users.noreply.github.com>
Copy link
codecov bot commented Apr 3, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 85.06%. Comparing base (5cdd135) to head (49c7c07).
Report is 1 commits behind head on main.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@mikemhenry mikemhenry merged commit ac0323f into choderalab:main Apr 22, 2025
22 checks passed
@hannahbaumann hannahbaumann deleted the disable_barostat_fire branch April 28, 2025 10:51
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 this pull request may close these issues.

2 participants
0