Changelog#
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased#
0.5.0 - 2026-04-09#
Added#
Umbrella Sampling example notebook: progressively populate the windows of an Umbrella Sampling simulation along a 1D collective variable
Changed#
all
asyncmd.utilsmethods now require a MDEngine (class) to dispatch to the correct engine submodule methodsGmxEngine
apply_constraintsandgenerate_velocitiesmethods: renamewdirargument toworkdirto make it consistent withprepareandprepare_from_files(also add theworkdirargument to the MDEngine ABC).
Fixed#
a rare condition that could result in the same
TrajectoryFunctionWrapperbeing applied twice to the sameTrajectory, which resulted in unnecessary computations and a ValuesAlreadyStoredError when trying to cache the calculated values twice.
0.4.1 - 2025-07-29#
Added#
Improved handling of h5py caches: Improved
asyncmd.config.register_h5py_cachemethod and addedasyncmd.config.deregister_h5py_cachemethod. It is now possible to use (multiple) read-only h5py cache sources to retrieve values from, even if no writeable cache source is registered. Also add an option to copy over all values from (read-only or writeable) previously registered h5py cache sources, when registering a new h5py cache source.“py.typed” file to support type checking
0.4.0 - 2025-07-22#
Added#
Pylint configuration (in
pyproject.toml), automatically run pylint as a github actionModule and file level docstrings with a short description for each module or file
Improve and expand documentation, include example notebooks into it, and setup deployment on read the docs
SlurmGmxEngine(andGmxEngine) now expose themdrun_time_conversion_factorto enable users to control the expected time it takes to set up the environment inside the slurm job. Both engines also have improved consistency checks for mdp options when performing energy minimization.MDEngine,GmxEngine, andSlurmGmxEngine: removed unusedrunningpropertySome tests for
trajectory.propagateandgromacs.mdenginemodules
Changed#
Renamed
asyncmd.trajectory.construct_TP_from_plus_and_minus_traj_segmentstoasyncmd.trajectory.construct_tp_from_plus_and_minus_traj_segments. Also minimal change to the call signature, arguments to theTrajectoryConcatenatorclass are now not explicit arguments anymore but instead all kwargs will be passed to theTrajectoryConcatenator.concatenatemethod.asyncmd.trajectory.propagate: Changes to the call signatures ofTrajectoryPropagatorclasses, the arguments that were previously only passed trough to the concatenator class are now not explicit anymore and instead all additional kwargs passed to theTrajectoryPropagator.cut_and_concatenateandTrajectoryPropagator.propagate_and_concatenatemethods will be directly passed to theconcatenatemethod of theTrajectoryConcatenator.Renamed
asyncmd.config.set_default_trajectory_cache_typetoasyncmd.config.set_trajectory_cache_typeand remove option to set cache type individually forTrajectoryobjects and instead always use the centrally configured cache. These changes were made while drastically simplifying the trajectory function value caching code (mostly under the hood) to increase maintainability and extensibility.TrajectoryFunctionWrapperand their interaction withTrajectories: One notable semi-under-the-hood change is thatTrajectoryFunctionWrappersubclasses now need to implement the_get_values_for_trajectorymethod instead of theget_values_for_trajectorymethod. The call signature of the function has not changed and the change should in all cases be as easy as appending the_to the function name in subclasses. This change was deemed necessary to avoid that users call theget_values_for_trajectorymethod expecting that the values would be cached (which they are not).TrajectoryConcatenator:remove_double_framesis now an instance attribute instead of an argument to theconcatenateandconcatenate_asyncmethods
Fixed#
refactor to reduce number of pylint messages
0.3.3 - 2025-05-06#
Added#
Add
CHANGELOG.mdfileSlurmProcessnow supports arbitrary sbatch options viasbatch_options, this is also true for theSlurmGmxEngineandSlurmTrajectoryFunctionWrapperclasses via the added keyword argumentsbatch_optionsExample IPython notebook on
FrameExtractorsSome tests for
slurmmodule
Fixed#
ConditionalTrajectoryPropagator,InPartsTrajectoryPropagator, and weighted ensemble example IPython notebooks now use the correct paths to input filesNo more f-strings in logging statements
Add scipy to dependencies
0.3.2 - 2025-01-10#
Added#
First release on PyPi