Releases: alchemistry/alchemlyb
2.3.0
What's Changed
- capitalize GROMACS in documentation code example by @helmutcarter in #356
- clarify docs by @xiki-tempula in #353
- Speed up the MBAR calculation by @xiki-tempula in #357
- Improve the error handling in the backward and forward convergence by @xiki-tempula in #358
New Contributors
- @helmutcarter made their first contribution in #356
Full Changelog: 2.2.0...2.3.0
2.2.0
Changes
- Require pandas >= 2.1 (PR #340)
- For pandas>=2.1, metadata will be loaded from the parquet file (issue #331, PR #340).
- add support for Python 3.12, remove Python 3.8 support (issue #341, PR #304).
Enhancements
- Add a TI estimator using gaussian quadrature to calculate the free energy.
(issue #302, PR #304) - Warning issued when the series is
None
forstatistical_inefficiency
(issue #337, PR #338) - ValueError issued when
df
andseries
forstatistical_inefficiency
doesn't have the same length (issue #337, PR #338)
Fixes
- data_fraction column in workflow.convergence won't be affected by the
unit conversion (issue #350, PR#319).
Full Changelog: 2.1.0...2.2.0
2.1.0
New Minor release.
From this release, loguru is used for logging and pandas parquet file can be used for saving and loading dataframe.
Changes
- ValueError raised if concatenated amber output file is passed to amber
parser (issue #315, PR #326). - Change the % based string formatting to {} based string formatting (issue #323, PR #324).
- Use loguru instead of logging for log (issue #301, PR #303).
Enhancements
- "Statistical inefficiency" is logged at debug level for equilibrium_detection
and statistical_inefficiency (issue #295, PR#325). - Add a parser to read serialised pandas dataframe (parquet) (issue #316, PR#317).
- workflow.ABFE allow parquet as input (issue #316, PR#317).
- Allow MBAR estimator to use bootstrap to compute error (issue #320, PR#322).
Fixes
- Fix the case where visualisation.plot_convergence would fail when the final
error is NaN (issue #318, PR#319).
DeprecationWarning
- The default MBAR error estimator in workflow.ABFE.estimate will change from
analytic to bootstrap=50 in 2.2.0 (issue #320, PR#322).
Full Changelog: 2.0.1...2.1.0
2.0.1
New patch release with bug fix.
What's Changed
- Fix the dE method in u_nk2series to use the difference between two
lambda columns instead of using the next lambda column or the previous
column for the last window (issue #299, PR #300). @xiki-tempula - workaround hanging tests on Mac M1 by using Path.glob instead of glob.glob
in ABFE workflow (issue #309, PR #310). @xiki-tempula
Full Changelog: 2.0.0...2.0.1
2.0.0
New major release with backwards-incompatible changes.
The 2.x releases of alchemlyb are based on pymbar release ≥ 4.0.0 (see Discussion #205 ). Compared to the 1.x releases of alchemlyb, which were based on pymbar ≥3.0.5,<4, the API for the estimators.MBAR
estimator underwent small changes and alchemlyb's AutoMBAR
estimator was removed because the new pymbar MBAR estimator provides its own robust minimizer method selection approach. Code that was written for alchemlyb 1.x will likely run but because pymbar itself went through a major release, we advise caution and careful checking of all results. Compare the output of alchemlyb 1.0.1 (the last release that uses pymbar 3.x) to output from the current alchemlyb 2.0.0.
What's Changed
- use pymbar 4 for estimators by @xiki-tempula in #268
- create output directory when it didn't exist for workflow by @xiki-tempula in #290
- raise Exception when no file has been matched in ABFE workflow by @xiki-tempula in #289
Full Changelog: 1.0.1...2.0.0
1.0.1
Patch-level release with bug-fixes.
Note that AutoMBAR
is being deprecated and scheduled for removal in release 2.0.0 because the MBAR estimator in pymbar 4.0 already provides the equivalent functionality. alchemlyb 2.0.0 will only support pymbar >= 4.0.
(We only fixed the docs and restructured some tests but these changes do not affect user-facing behavior.)
Fixes
- #272 : AMBER parser had a "too strict" regex to extract values by @DrDomenicoMarson in #273
- #274 : Slicing will no longer drop the NaN rows by @xiki-tempula in #275
- #276 : ABFE workflow crashed with
forwrev=0
by @xiki-tempula in #282
Deprecations
- #284 : deprecated
AutoMBAR
by @xiki-tempula in #285
Full Changelog: 1.0.0...1.0.1
1.0.0
The 1.0.0 release of alchemlyb comes with a stable API and multiple enhancements for postprocessing and workflows.
Importantly, the 1.x release of alchemlyb only supports pymbar >=3.0.5, <4. We plan to switch to pymbar >= 4 soon (see #205 , #207) and then release a 2.0.0 of alchemlyb. We will not backport fixes from 2.x to 1.x or maintain a 1.x for the long term (unless volunteers from the community offer to take on maintenance).
Supported platforms
We follow NEP29 for supported Python/numpy versions. Currently supported:
- Python 3.8 – 3.10 (continuously tested), 3.11 (manually tested)
- Linux, macOS, Windows
- pymbar >= 3.0.5, < 4
Packages are available from PyPi and conda-forge.
Highlights
- stable API
- complete absolute binding free energy (ABFE) workflow (#114, #231) in the new workflow module (#188)
- more robust AMBER parser (#221, #225, #226, #227, #229, #238)
- new fractional equilibration time convergence analysis (
$R_c$ and$A_c$ from Fan et al 2021) - common
extract(file, temperature)
function to read both dHdl and u_nk data in one pass if possible (#222)
For all changes in this release see CHANGES.
Contributors
0.7.0
Release with bug fixes and new functionality.
Highlights
- gmx parser now defaults to dropping NaN and corrupted lines (filter=True) #171
- add a base class for workflows (PR #188)
- add filter function to gmx.extract to make it more robust (PR #183): can filter incomplete/corrupted lines (#126, #171) with
filter=True
. - Fixed subsampling in
statistical_inefficiency()
when lower or step keywords are used (Issue #198, PR #199)
All Changes
See CHANGES for details.
0.6.0
Release with new functionality.
Please note that the GitHub Discussions forum is now enabled where you can ask questions and get involved in the next steps for alchemlyb.
Highlights
- support for NAMD Interleaved Double-Wide Sampling (IDWS) (PR #135)
- various improvements to the robustness of parsing NAMD fepout files (#145)
- forward/backward convergence analysis in the new alchemlyb.convergence module (PR #168)
- automatic MBAR solver (AutoMBAR) that falls back to a potentially more stable solver mode (#170)
- Python 3.10 is fully supported
All changes
See the CHANGES file for details.