Skip to content

Add OpenMM CMAP support#409

Open
lohedges wants to merge 9 commits intodevelfrom
feature_openmm_cmap
Open

Add OpenMM CMAP support#409
lohedges wants to merge 9 commits intodevelfrom
feature_openmm_cmap

Conversation

@lohedges
Copy link
Contributor

This PR adds support for CMAP terms in the Sire-to-OpenMM conversion layer. This turned out to be fairly straightforward, with the main complication being the different grid ordering used internally by OpenMM. The AMBER format stores the grid with phi varying slowest in column-major order, while OpenMM expects the grid with a half-period cyclic shift applied to both axes and the phi/psi axes swapped.

Unit tests confirm that a system containing CMAP terms converted to an OpenMM system with Sire gives identical energies to what would be obtained using the OpenMM Python API directly. A second unit test performs initial validation for the perturbable CMAP implementation by validating the protein CMAP terms are unmodified when changing lambda for a one-to-one mapping between residues in a protein backbone. (This also validates that the BioSimSpace CMAP merging is working correctly.) I'll add a unit test to BioSimSpace when I have an example protein mutation that involves CMAP terms.

The PR also closes #405 by adding a timeout to the GROMACS archive download in sire.load.

  • I confirm that I have merged the latest version of devel into this branch before issuing this pull request (e.g. by running git pull origin devel): [y]
  • I confirm that I have added a test for any new functionality in this pull request: [y]
  • I confirm that I have added documentation (e.g. a new tutorial page or detailed guide) for any new functionality in this pull request: [y]
  • I confirm that I have added a changelog entry to the changelog (we will add a link to this PR as part of the review): [y]
  • I confirm that I have permission to release this code under the GPL3 license: [y]

@lohedges lohedges added bug Something isn't working enhancement New feature or request labels Mar 18, 2026
@lohedges lohedges deployed to sire-build March 18, 2026 14:13 — with GitHub Actions Active
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] sire.load will hang when there is no internet connectiion and GROMACS isn't installed

1 participant