Skip to content

Releases: choderalab/openmmtools

0.22.0

11 Apr 18:42
47807bb

Choose a tag to compare

Highlights:

  • Support for new pymbar 4 branch.
  • Gentle equilibration utility function.
  • Support for newer netcdf versions (1.6 branch)

Detailed information as follows:

Enhancements

  • Openmmtools now supports both Pymbar 3 and 4 versions. (PR #659)
  • Gentle equilibration protocol utility function available in openmmtools.utils.gentle_equilibration (PR #669).
  • Timing information for multiple state sampler is now reported by default (PRs #679 and #671).

Bugfixes

  • Users were not able to distinguish the exceptions caught during dynamics. Warnings are now raised when an exception is being caught (Issue #643 PR #658).
  • Deserializing MCMC moves objects from versions <=0.21.4 resulted in error finding the key. Fixed by catching the exception and raising a warning when key is not found (Issue #618 PR #675).
  • Different improvements in documentation strings and readthedocs documentation generation (Issues #620 #641 #548. PR #676)
  • Support for newer NetCDF versions (1.6 branch) by not using zlib compression for varying length variables. (PR #654).

Full Changelog: 0.21.5...0.22.0

0.21.5

03 Aug 13:02
e7e5847

Choose a tag to compare

What's changed

Changed behaviors

  • LangevinDynamicsMove now uses openmm.LangevinMiddleIntegrator (a BAOAB integrator) instead of openmm.LangevinIntegrator (an OBABO integrator). Issue #599 (PR #600).

Bugfixes

  • Velocities were being incorrectly updated as zeros when resuming simulations or broadcasting from different mpi processes. Fixed by specifying ignore_velocities=False in _propagate_replica. Issue #531 (PR #602).
  • Bug in equilibration detection 1: The user was allowed to specify statistical_inefficiency without specifying n_equilibration_iterations, which doesn't make sense, as n_equilibration_iterations and n_effective_max cannot be computed from statistical_inefficiency alone. Fixed by preventing user from specifying statistical_inefficiency without n_equilibration_iterations. Issue #609 (PR #610).
  • Bug in equilibration detection 2: If the user specified n_equilibration_iterations but not statistical_inefficiency, the returned n_equilibration_iterations did not include number of equilibration iterations as computed from _get_equilibration_data_per_sample(). Fixed by always including the _get_equilibration_data_per_sample() result in in the returned n_equilibration_iterations. Issue #609 (PR #610).
  • Bug in equilibration detection 3: get_equilibration_data_per_sample returns 0 for n_equilibration_iterations. Fixed by always discarding the first time origin returned by get_equilibration_data_per_sample. To control the amount of data discarded by the first time origin, the user can now specify max_subset when initializing MultiStateSamplerAnalyzer. Issue #609 (PR #610).
  • Deserializing simulations from openmmtools<0.21.3 versions resulted in error. Fixed by catching the missing key, KeyError exception, when deserializing. Issue #612, PR #613.
  • Not specifying a subdirectory for the reporter file resulted in PermissionError when writing the real time analysis file. Fixed by using os.path.join for creating the output paths. Issue #615, PR #616.

Enhancements

  • LangevinDynamicsMove now allows constraint_tolerance parameter and public attribute, for specifying the fraction of the constrained distance within which constraints are maintained for the integrator (Refer to Openmm's documentation for more information). Issue #608, PR #611.
  • Platform is now reported in the logs in DEBUG mode. Issue #583, PR #605.

Full Changelog: 0.21.4...0.21.5

0.21.4

08 Jun 18:31
47f59f7

Choose a tag to compare

Bugfixes

  • Bug in statistical inefficiency computation where self.max_n_iterations wasn't being used was fixed (#577).
  • Bug in estimated performance in realtime yaml file fixed by iterating through all MCMC moves (#578)
  • Potential bug fixed by explicitly updating and broadcasting thermodynamic states in replicas, when used in an MPI (distributed) context.
    Issue #579 (#587).
  • Bug in handling unsampled states in realtime/offline analysis fixed by using MultiStateSampler._unsampled_states to build the mbar estimate array.
    Issue #592 (#593)

Enhancements

  • DHFR test system does not require parmed as dependency, since OpenMM can now handle prmtop/inpcrd files.
    Issue #539 (#588).
  • MultiStateSamplerAnalyzer now allows to manually specify n_equilibrium_iterations and statistical_inefficiency parameters. (#586).

0.21.3

15 Apr 19:37
870d81a

Choose a tag to compare

What's Changed

Bugfixes

  • Bug in replica mixing in MPI multi-GPU runs--where some replicas were simulated in incorrect states--was fixed (#449) & (#562).
  • Velocities are now stored in the checkpoint file to eliminate issue with "cold restart". Fixes issue #531 (#555).
  • Documentation now correctly builds via CI. Fixes issue #548 (#554).
  • Failing windows CI (issue #567) is fixed. (#573)

Enhancements

  • Real time MBAR analysis and timing information is now produced in yaml format at user-specified intervals (#565), (#561) & (#572).
  • Information of what CUDA devices are available is now provided in log output (#570).
  • Replica exchanges are now attempted during equilibration phase to enhance mixing (#556).
  • An example of resuming a MultiStateSampler simulation using API is now provided (#569)

New Contributors

Full Changelog: 0.21.2...0.21.3

Bugfix Release v0.21.2

24 Feb 16:42
4d437c2

Choose a tag to compare

What's Changed

  • Add test to check platform precision using a string + fix error by @mikemhenry in #551

Full Changelog: 0.21.1...0.21.2

0.21.1

15 Feb 16:27
7e6926f

Choose a tag to compare

What's Changed

Full Changelog: 0.21.0...0.21.1

Release v0.21.0

05 Feb 00:01
b233203

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.20.3...0.21.0

0.20.3 Bugfix Release

26 Mar 14:22
321b998

Choose a tag to compare

Fix critical bug in which GPU contexts would fail to recognize mixed precision was available PR #506 (Resolves issue #505 )

0.20.2 Bugfix Release

17 Mar 16:54
3f2cfc0

Choose a tag to compare

Remove leftover six imports and xrange See PR #504

0.20.1 Bugfix Release

16 Mar 21:54
fa9e701

Choose a tag to compare

This release fixes several bugs and eliminates cython compiled acceleration of replica-exchange all-swap (replacing it with numba) to enable working release on conda-forge.

Bug Fixes

  • #485: Replace cython-accelerated all-swap replica mixing with numba implementation
  • #488: Fix ParallelTemperingSampler temperature spacing
  • #501: Do unit conversion first to improve precision (fixes issue #500)