0.21.5
What's changed
Changed behaviors
LangevinDynamicsMove
now usesopenmm.LangevinMiddleIntegrator
(a BAOAB integrator) instead ofopenmm.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 specifyingn_equilibration_iterations
, which doesn't make sense, asn_equilibration_iterations
andn_effective_max
cannot be computed fromstatistical_inefficiency
alone. Fixed by preventing user from specifyingstatistical_inefficiency
withoutn_equilibration_iterations
. Issue #609 (PR #610). - Bug in equilibration detection 2: If the user specified
n_equilibration_iterations
but notstatistical_inefficiency
, the returnedn_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 returnedn_equilibration_iterations
. Issue #609 (PR #610). - Bug in equilibration detection 3:
get_equilibration_data_per_sample
returns 0 forn_equilibration_iterations
. Fixed by always discarding the first time origin returned byget_equilibration_data_per_sample
. To control the amount of data discarded by the first time origin, the user can now specifymax_subset
when initializingMultiStateSamplerAnalyzer
. 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 usingos.path.join
for creating the output paths. Issue #615, PR #616.
Enhancements
LangevinDynamicsMove
now allowsconstraint_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