Skip to content

Releases: leeping/forcebalance

Version 1.9.6 Minor Release

27 Sep 16:28
Compare
Choose a tag to compare

This is mainly a release to restore compatibility with the updated OpenFF Toolkit. The other commits are bug fixes and getting Github Actions CI to work.

Version 1.9.5 Minor Release

08 Feb 18:11
10b9280
Compare
Choose a tag to compare

Changes and Improvements:

  • The optional output file for MM and QM energy comparison now includes a column for the magnitude of the (MM-QM) force difference.
  • Compatibility changes for the latest version of OpenMM, in particular, the changes to the API for AMOEBA forces that were introduced in version 7.6.
  • Compatibility changes for the latest version of OpenFF Toolkit and Evaluator (Jeff Wagner & Matt Thompson).
  • Compatibility changes to support GROMACS up to version 2019.6. Around 2018 GROMACS no longer wrote variable precision .gro files (and the default 3 digit precision was insufficient) so we changed our trjconv calls to write .g96 files instead and added a .g96 parser. Major GROMACS releases after 2019 removed the support for vacuum simulations so we do not support those versions.
  • Properly implemented the feature to remove microiteration folders. The previous implementation never worked.
  • Added a parser for the updated Psi4 format for vibrational calculations (John Stoppelman).
  • More secure .tar file extraction (auto-added by Trellix vuln team).
  • Changed the expected output in the OpenFF torsion profile test because newer versions of the toolkit changed the default charge assignment method.
  • Changed some AMOEBA vdW sigma parameters from 0 to 1 for particles with no vdW interactions because the newer OpenMM version gives a divide-by-zero error if the sigma parameter is set to 0.
  • Removed the default frequency scaling function call in make-vdata.py. It now writes unscaled frequencies. Users are encouraged to set their own scale factors corresponding to the QM method.

Known issues:

  • The interface to AMOEBA forces in OpenMM requires OpenMM version 8.0 or higher. However, as of this release, the latest version of OpenFF Evaluator (0.4.2) requires OpenMM version 7.7 or lower. Therefore there is no single version of OpenMM that works for both of these features. The next release of OpenFF Evaluator will most likely be OpenMM 8 compatible. For now, the recommendation for users is to install the OpenMM version that corresponds to your project.
  • The interface to OpenFF Recharge is still not working. This will probably be fixed in a future release of OpenFF Recharge.

Pull requests:

New contributors:

Full Changelog: v1.9.4...v1.9.5

Version 1.9.4 Minor Release

08 Dec 21:02
Compare
Choose a tag to compare

This release is for compatibility with updated packages in the OpenFF ecosystem. smirnoff_io.py and recharge_io.py have been updated to make the correct API calls to the corresponding packages. Configuration files have also been updated to ensure that CI is running properly.

Version 1.9.3 Minor Release

08 Mar 22:11
9f99464
Compare
Choose a tag to compare

Minor changes and bugfixes since v1.9.2

  • Update CI, fix compatibility with OpenMM 7.7 by @mattwthompson in #249
  • Cache generate_conformers with hash_molecule_args_and_kwargs approach by @mattwthompson in #251
  • Change molecule.qm_bondorder into a list of bond order matrices for all frames by @leeping in a8659b2

Full Changelog: v1.9.2...v1.9.3

Version 1.9.2 Bugfix Release

24 Sep 19:49
78a48d0
Compare
Choose a tag to compare

Bugfixes since v1.9.1

Return OpenMM to being an optional dependency, and update all imports to new namespace (Jeff Wagner)

  • A bug was introduced in 1.9.1 which effectively made OpenMM a required dependency instead of an optional one. Additional import logic has been added to make it optional again.
  • The former simtk.openmm namespace will be deprecated in the future, so all imports now first attempt to load the new openmm namespace before falling back to the simtk one.

Re-enable TestLiquid_OpenMM (Lee-Ping Wang)

  • Enables two OpenMM tests that were unreasonably turned off at an earlier date.

Fix study 003d (Simon Boothroyd, Jeff Wagner, Lee-Ping Wang)

  • API changes in openff-evaluator had caused studies/003d_evaluator_liquid_bromine to begin failing. This has been updated to work with the new openff-evaluator API.

Version 1.9.1 Minor Release

17 Sep 19:59
0d63ac5
Compare
Choose a tag to compare

Minor changes and bugfixes since v1.9.0

Support gradients of SMIRNOFF handler attributes (Simon Boothroyd)

  • Updates the OpenFF Evaluator target so that it can correctly handle optimising handler attributes (e.g. the 1-4 scaling factor or the alpha, beta parameters of the double exponential handler)

Fixes double-wrapping of units on coordinates (Josh Horton)

  • Removes the double wrapping of the coordinates in units of angstrom which causes conversions to nanometer to go wrong.

Fixes for OpenFF toolkit 0.10.0 release (Josh Horton)

  • Updates the Smirnoff hack file to work with the newest toolkit release, introducing a new argument to the partial charge assignment methods that normalize the net charge.

Support for OpenMM 7.6 package namespace (Jeff Wagner)

  • Adds support for BOTH OpenMM >=7.6 and <7.6 package namespaces

Version 1.9.0 Major Release

19 Jul 16:06
Compare
Choose a tag to compare

New features since v1.8.1

Internal coordinate Hessian target (Hyesu Jang)

  • This target involves fitting the Hessian, transformed into a primitive internal coordinate system.
  • The QM input data is a Hessian matrix in Cartesian coordinates.
  • The MM Hessian is computed after a local energy minimization.
  • The geomeTRIC package is used to transform the Hessian matrix into internal coordinate prior to computing the objective function.

Virtual sites in SMIRNOFF/OpenFF (Simon Boothroyd)

  • Includes TIP4P example calculation

Support for LocalCoordinatesSite in OpenMM (Josh Horton)

Minor changes

  • Add option to delete microiteration outputs when searching over Hessian diagonal (Simon Boothroyd)
  • A couple of small bug fixes (Pavan Kumar and Mateusz Bieniek)

Version 1.8.1 Bugfix Release

23 Mar 18:55
Compare
Choose a tag to compare

Minor changes

In the previous version, the newly merged Drude codes caused ForceBalance to crash when using the SMIRNOFF force field. This is now fixed.

The Gromacs version has been pinned in the GitHub Actions CI (though most Gromacs tests are still skipped because there is no double precision builds as of now).

molecule.py now uses importlib when available, in an ongoing effort to reduce the number of warnings when running tests.

Version 1.8.0 Major Release

11 Mar 20:27
Compare
Choose a tag to compare

New features since v1.7.5

GitHub Actions CI (Matt Thompson)

  • Automated testing migrated from Travis to GitHub Actions.
  • Still needs the following for completeness:
  • EITHER putting the OE license back, OR changing the little remaining functionality that requires it over to SDF (should be possible now that OFFTK supports partial-charges-in-SDF). I'd think that the latter is a better choice since it will remove the need for an OE license in CI and will let @leeping allow PRs from forks.
  • Re-enabling Py27 tests (I'm mostly okay with letting this go)
  • Re-establishing double precision GROMACS builds

Reoptimize tool (John Stoppelman)

  • This script automates the process of identifying spurious energy minima in an optimized MM force field.
  1. The existing structures in the AbInitio targets are energy-minimized using the force field.
  2. QM single point calculations are performed on the energy minimized structures (includes script to write Psi4 input files).
  3. Results of QM calculations are processed into a new AbInitio target.
  4. Running ForceBalance using this new target will include the energy data on these new MM minima, allowing spurious minima to be removed.
  • Available under tools/Reopt

OpenMM Drude parameter optimization (John Stoppelman)

  • For OpenMM force fields containing Drude particle degrees of freedom, ForceBalance will ask OpenMM to energy-minimize the positions of Drude particles prior to evaluating properties.
  • Includes an example under 026_drude_water .

Support for fitting SMIRNOFF 1-4 scale factors (Simon Boothroyd)

  • Includes an example under 026_smirnoff_14_scale .

Minor changes

  • Fix a bug with vibrational mode reassignment (Hyesu Jang)
  • Migrate to the new OpenFF toolkit namespace package (Simon Boothroyd)

Version 1.7.5 minor release

08 Sep 17:33
Compare
Choose a tag to compare
  • This release adds support for openff-recharge, a new target for fitting charges and bond charge corrections developed by Simon Boothroyd as part of Open Force Field. (see https://github.com/openforcefield/openff-recharge)

  • A new example calculation has been added under studies/025_openff_recharge.

  • The abinitio target has been refactored to simplify the different ways in which MM energies can be fitted to QM energies. A new option has been added energy_mode where the possible values are

average : Subtract out the mean gap (default).
qm_minimum : Reference all MM and QM energies to the structure with minimum QM energy.
absolute : Use absolute energies in fitting, do not subtract out any energy gap.

When qm_minimum is selected for energy_mode, negative values of (MM-QM) energy can be given greater weight using the asymmetry option.