698 Commits

Author SHA1 Message Date
Evan Pretti
3aa91626db Update README for 0.16.0 (#439) 0.16.0 2026-04-27 10:34:40 -07:00
Evan Pretti
745cfcfa80 Make all template generators require explicit force field specification (#438)
* Template generators no longer choose default force fields

* Only call add_molecules() when a template generator is present

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-04-24 13:30:35 -07:00
Evan Pretti
5bf74f7655 Update README and SystemGenerator docstring (#435) 2026-04-24 12:23:32 -07:00
pre-commit-ci[bot]
4fda9f1388 [pre-commit.ci] pre-commit autoupdate (#436)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.14.10 → v0.15.9](https://github.com/astral-sh/ruff-pre-commit/compare/v0.14.10...v0.15.9)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-04-06 11:20:06 -07:00
Evan Pretti
7b765ec034 Support multi-residue molecules in template generator and improve performance (#430)
* Support virtual sites and multiple SMIRNOFF force fields

* Put test files where tests can actually find them

* Clean up some changes in template_generators.py

* Clean up virtual site permutation handling in test cases

* Unfinished draft

* Allow specifying multiple force fields

* Support constraints and virtual sites

* Add more tests for constraints

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Run tests on OpenMM 8.5.0 beta since we need ForceField changes

* Need openmm_dev channel

* Use correct channel names (openmm_rc for beta)

* Minor improvement to torsion handling, fix incorrect comment

* Basic test for proteins

* Default to unconstrained variant of force field when given name

* Test molecule is unstable due to vsite/H overlap

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update vsite tests with more varieties of molecules

* Autoformatter

* Update openmmforcefields/generators/template_generators.py

Co-authored-by: Josh Horton <joshua.horton@openforcefield.org>

* 1-4 exception check (not vsites) now uses non-zero scalings

* Use preset list of known force field names, update documentation

* Reduce test set size after Interchange cache behavior change

* Update openmmforcefields/tests/test_template_generators.py

Co-authored-by: Jeff Wagner <jwagnerjpl@gmail.com>

* Water constraints test also checks TIP3P inside openff_unconstrained

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix error message if preset force field file can't be located

* Update CHARMM force field scripts (see openmm/openmm#5181)

* Change caching behavior so molecules must be added

* Regenerate CHARMM force fields

* Test regenerated force fields on OpenMM 8.5.0 beta

* Refactor multi-residue molecule test

* Put back CHARMM files that didn't change other than generation date

* Add test with virtual site frame atoms spanning residue

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Add test file with many amino acids

* Run tests on release version of OpenMM instead of beta

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Josh Horton <joshua.horton@openforcefield.org>
Co-authored-by: Jeff Wagner <jwagnerjpl@gmail.com>
2026-03-31 17:03:58 -07:00
dependabot[bot]
0fdae52b7f Bump mamba-org/setup-micromamba from 2 to 3 (#433)
Bumps [mamba-org/setup-micromamba](https://github.com/mamba-org/setup-micromamba) from 2 to 3.
- [Release notes](https://github.com/mamba-org/setup-micromamba/releases)
- [Commits](https://github.com/mamba-org/setup-micromamba/compare/v2...v3)

---
updated-dependencies:
- dependency-name: mamba-org/setup-micromamba
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-27 09:24:10 -07:00
dependabot[bot]
d2575521db Bump codecov/codecov-action from 5 to 6 (#432)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5 to 6.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-26 13:15:32 -05:00
dependabot[bot]
a4cf0cfce9 Bump docker/login-action from 3 to 4 (#431)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3 to 4.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-04 09:07:51 -08:00
Evan Pretti
0551fd1fa5 SMIRNOFF: multiple force field files, virtual sites, and constraints (#423)
* Support virtual sites and multiple SMIRNOFF force fields

* Put test files where tests can actually find them

* Clean up some changes in template_generators.py

* Clean up virtual site permutation handling in test cases

* Unfinished draft

* Allow specifying multiple force fields

* Support constraints and virtual sites

* Add more tests for constraints

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Run tests on OpenMM 8.5.0 beta since we need ForceField changes

* Need openmm_dev channel

* Use correct channel names (openmm_rc for beta)

* Minor improvement to torsion handling, fix incorrect comment

* Default to unconstrained variant of force field when given name

* Test molecule is unstable due to vsite/H overlap

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update vsite tests with more varieties of molecules

* Autoformatter

* Update openmmforcefields/generators/template_generators.py

Co-authored-by: Josh Horton <joshua.horton@openforcefield.org>

* 1-4 exception check (not vsites) now uses non-zero scalings

* Use preset list of known force field names, update documentation

* Reduce test set size after Interchange cache behavior change

* Update openmmforcefields/tests/test_template_generators.py

Co-authored-by: Jeff Wagner <jwagnerjpl@gmail.com>

* Water constraints test also checks TIP3P inside openff_unconstrained

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix error message if preset force field file can't be located

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Josh Horton <joshua.horton@openforcefield.org>
Co-authored-by: Jeff Wagner <jwagnerjpl@gmail.com>
2026-03-03 13:49:52 -08:00
pre-commit-ci[bot]
fb8ed0eda4 [pre-commit.ci] pre-commit autoupdate (#427)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.13.3 → v0.14.10](https://github.com/astral-sh/ruff-pre-commit/compare/v0.13.3...v0.14.10)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-01-06 08:58:32 -08:00
Mike Henry
2df3b57acd Add changelog entry for 0.15.1 (#425) 0.15.1 2025-12-18 15:01:54 -07:00
dependabot[bot]
1c969a638f Bump actions/checkout from 5 to 6 (#420)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-21 11:06:58 -06:00
Evan Pretti
cbfa007fb8 Remove ff19ipq (#419) 2025-11-18 11:10:23 -08:00
Evan Pretti
2b42b442bb Make default SMIRNOFF force field openff-2.2.1 (#417)
* Make default SMIRNOFF force field openff-2.2.1

* Update default OpenFF force field for espaloma
2025-11-13 14:20:22 -08:00
Evan Pretti
ea248b423f Bump OpenMM versions in CI to include 8.4.0 (#418) 2025-11-12 17:07:13 -08:00
Hannah Baumann
a81f28a0d8 Allow for any barostat in SystemGenerator (#414)
* Allow for any barostat in SystemGenerator

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix doc strings

* Add test for MonteCarloMembraneBarostat

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-03 16:50:34 -08:00
pre-commit-ci[bot]
839f225e00 [pre-commit.ci] pre-commit autoupdate (#407)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.12.2 → v0.13.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.12.2...v0.13.3)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Evan Pretti <pretti@stanford.edu>
2025-10-14 12:58:22 -07:00
Matt Thompson
a41df65465 Fix CI, update docstrings (#408)
* Fix CI

* Update list of SMIRNOFF force fields
2025-10-08 15:25:48 -07:00
Evan Pretti
48a0b54655 Add Lipid21 (#390)
* Add Lipid21

* Update to conversion script to handle how patched ParmEd writes GLYCAM

* Restore original GLYCAM until we can validate it in #393
2025-09-08 14:11:11 -07:00
Iván Pulido
44b7d6709f Using stdlib importlib.resources instead (#403) 2025-08-21 07:12:47 -05:00
dependabot[bot]
a9a41bbcef Bump actions/checkout from 4 to 5 (#402)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-11 15:56:14 -05:00
Mike Henry
6d91c7099e Release 0.15.0 (#401)
* Release 0.15.0

* add note about API change
0.15.0
2025-08-07 15:43:07 -07:00
Evan Pretti
0496840ca5 Import DGL to create ~/.dgl/config.json before any tests run (#400) 2025-08-06 15:52:11 -07:00
Evan Pretti
301dad9e75 Fixes for issues and assorted cleanups to generators (#391)
* Cleanups:

* Remove residue_atoms argument of generate_residue_template() methods: fixes #379

* OpenMMSystemMixin.convert_system_to_ffxml improper_atom_ordering was silently ignored

* Removal of unused kwargs that could cause misspelled parameters to be silently ignored

* Removal of some unused local variables

* DummySystemGenerator: was broken due to early return

* Consolidate custom classproperty implementation

* Docstrings: parameters out of order, errors, formatting

* Fix OpenFF units import for older openff-toolkit version compatible with espaloma

* Fix broken DummySystemGenerator feature

* Partial charge normalization

* Use common logic for checking user-specified partial charges sum to
  total formal charge, and raising a warning if so

* GAFFTemplateGenerator no longer silently adjusts user-specified
  partial charges if they don't sum to the formal charge: fixes #373

* Cleanups to test cases:

* Consolidate propagate_dynamics() implementations into
  TemplateGeneratorBaseCase

* Remove charges_from_system(), charges_are_equal(), compute_energy(),
  and compare_energies() from TestGAFFTemplateGenerator since identical
  implementations are available in TemplateGeneratorBaseCase

* Bump CI OpenMM versions

* Testing template generator user charge feature:

* Ensure warnings are raised / not raised as appropriate (GAFF, SMIRNOFF)

* SMIRNOFF should accept user charges not matching once we warn about it

* Make template_generator_kwargs explicit

* ruff format

* Remove unused imports

* Formatting, remove unused local assignments

* Remove references to and tests for DummySystemGenerator

* Style update: import classproperty

---------

Co-authored-by: Mike Henry <11765982+mikemhenry@users.noreply.github.com>
2025-08-06 12:38:04 -07:00
Evan Pretti
6f372f04d6 Merge pull request #397 from epretti/remove-dummysystemgenerator
Remove `DummySystemGenerator`
2025-08-06 10:12:48 -07:00
Mike Henry
7994d1969e Merge branch 'main' into remove-dummysystemgenerator 2025-08-06 08:25:27 -07:00
Evan Pretti
e7c1f9e5e8 Fix espaloma model download race conditions (#398) 2025-08-06 08:06:38 -07:00
Evan Pretti
4795d124f8 Remove DummySystemGenerator 2025-08-05 14:02:36 -07:00
Evan Pretti
06edadece1 Merge pull request #392 from openmm/feat/run-espaloma-tests
run espaloma tests
2025-08-01 13:54:43 -07:00
Mike Henry
936291a6e3 put env block up higher in job step so it is easier to see and also fix issue with it missing 2025-07-30 14:27:06 -07:00
Mike Henry
fd86f96ff4 need to also not use --runespaloma on python 3.13 2025-07-30 14:13:35 -07:00
Mike Henry
c5e773e726 skip espaloma tests on python 3.13 (might need to also remove --runespaloma in pytest call if we are on python 3.13 -- lets see what happens) 2025-07-30 13:17:41 -07:00
Mike Henry
a483303b14 Merge branch 'main' into feat/run-espaloma-tests 2025-07-28 10:29:55 -07:00
Mike Henry
5d0c60724a drop python 3.10, add 3.13 and drop openmm 8.1.2 and test 8.3.1 (#394) 2025-07-28 10:29:41 -07:00
pre-commit-ci[bot]
580cd58611 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-07-25 19:09:38 +00:00
Mike Henry
722c2f61b6 Run espaloma tests and refactor CMMotionRemover fix
The CMMotionRemover fix should go to where we create the openff xml,
that way any system using SMIRNOFFTemplateGenerator gets the fix
2025-07-25 12:06:59 -07:00
Mike Henry
6c90ebbd60 install espaloma 2025-07-25 11:44:07 -07:00
Matt Thompson
b2998133fe Update README to reflect default SMIRNOFF force field (#389) 2025-07-15 15:39:01 -05:00
pre-commit-ci[bot]
624b6905e9 [pre-commit.ci] pre-commit autoupdate (#388)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.11.4 → v0.12.2](https://github.com/astral-sh/ruff-pre-commit/compare/v0.11.4...v0.12.2)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-07 17:56:02 +00:00
Evan Pretti
4f9228dc7b Merge pull request #386 from epretti/charmm-naming-patching
Fixes and improvements for CHARMM force fields
2025-07-02 11:17:33 -07:00
Evan Pretti
34c07f042b Drude fixes and better improper/anisotropy script template name lookup 2025-06-23 17:33:51 -07:00
Evan Pretti
2f8440dfc3 Add Drude version of all-amino-acid test with terminal residues 2025-06-23 16:27:42 -07:00
Evan Pretti
842adfee6d Allow combining CHARMM force fields with others not using residue+name atom type scheme. 2025-06-23 14:44:19 -07:00
Evan Pretti
b4d5917fee Add tests case with standard amino acids including N- and C-terminals 2025-06-23 14:21:23 -07:00
Evan Pretti
8412e01819 Update README to note issues with current ParmEd and point to patched repository 2025-06-23 12:44:20 -07:00
Evan Pretti
2a223fad29 Merge branch 'fix-charmm-proline-patch' into charmm-naming-patching 2025-06-23 11:13:34 -07:00
Evan Pretti
61c6bd1c31 Don't apply proline-specific patch to non-proline residues 2025-06-23 11:12:07 -07:00
Evan Pretti
730a101933 Merge pull request #385 from openmm/fix-numpy.compat-issue
Pin numpy <2.3 to fix issue with numpy.compat missing
2025-06-23 09:18:50 -07:00
Mike Henry
74b6557123 Pin numpy <2.3 to fix issue with numpy.compat missing 2025-06-20 12:32:48 -07:00
Evan Pretti
08e4c22dcf Merge pull request #368 from epretti/update-amber-ff
Update Amber force fields with latest versions from AmberTools 24
2025-04-30 14:46:57 -07:00