openff-interchange

A project (and object) for storing, manipulating, and converting molecular mechanics data.

https://github.com/openforcefield/openff-interchange

Science Score: 77.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    3 of 17 committers (17.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.1%) to scientific vocabulary

Keywords

amber forcefield gromacs interoperability lammps molecular-simulation openmm

Keywords from Contributors

molecular-dynamics atom-typing disseminating-forcefields force-field foyer computational-chemistry chemistry quantum-chemistry standards free-energy-calculations
Last synced: 4 months ago · JSON representation ·

Repository

A project (and object) for storing, manipulating, and converting molecular mechanics data.

Basic Info
Statistics
  • Stars: 79
  • Watchers: 18
  • Forks: 25
  • Open Issues: 113
  • Releases: 49
Topics
amber forcefield gromacs interoperability lammps molecular-simulation openmm
Created over 5 years ago · Last pushed 5 months ago
Metadata Files
Readme Contributing License Citation Codeowners

README.md

OpenFF Interchange

| Test status | CI Status | pre-commit.ci status | |:-|:-|:-| | Code quality | pre-commit | Codecov coverage | | Latest release | GitHub release (latest by date including pre-releases) | | | User support | Documentation Status | Discussions |

A project (and object) for storing, manipulating, and converting molecular mechanics data.

Documentation

Documentation for Interchange, including examples, a brief user guide, release history, and API docs, is available on the OpenFF website. Example notebooks are rendered online among examples from other projects in the OpenFF ecosysytem docs

How to cite

Please cite Interchange using the Zenodo record of the latest release or the version that was used. The BibTeX reference of the latest release can be found at this link.

Installation

Recent versions of the OpenFF Toolkit (0.11.0+, released August 2022) install Interchange by default through its conda package.

Interchange can also be installed manually via conda (or mamba):

shell conda install openff-interchange -c conda-forge

Getting started

The Iterchange object serves primarily as a container object for parametrized data. It can currently take in SMIRNOFF or Foyer force fields and chemical topologies prepared via the OpenFF Toolkit. The resulting object stores parametrized data and provides APIs for export to common formats.

```python3 from openff.toolkit import ForceField, Molecule from openff.units import unit

from openff.interchange import Interchange

Use the OpenFF Toolkit to generate a molecule object from a SMILES pattern

molecule = Molecule.from_smiles("CCO")

Generate a conformer to be used as atomic coordinates

molecule.generateconformers(nconformers=1)

Convert this molecule to a topology

topology = molecule.to_topology()

Define periodicity via box vectors

topology.box_vectors = unit.Quantity([4, 4, 4], unit.nanometer)

Load OpenFF 2.0.0 "Sage"

sage = ForceField("openff-2.0.0.offxml")

Create an Interchange object

out = Interchange.fromsmirnoff(forcefield=sage, topology=topology)

Convert the Interchnage object to an OpenMM System

system = out.to_openmm()

or write to GROMACS files

out.togro("out.gro") out.totop("out.top")

or store as JSON

json_blob = out.json() ```

For more information, please consult the full documentation.

For more examples specific to Interchange, navigate to the examples/ directory.

Copyright

Copyright (c) 2020, Open Force Field Initiative

License

The source code of Interchange is hosted on GitHub and is available under the MIT license (see the file LICENSE). Some parts inherit from code distributed under other licenses, as detailed in LICENSE-3RD-PARTY.

Acknowledgements

Project based on the Computational Molecular Science Python Cookiecutter version 1.2.

Owner

  • Name: Open Force Field Initiative
  • Login: openforcefield
  • Kind: organization

An open source, open science, and open data approach to better force fields

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: OpenFF Interchange
message: 'If you use Interchange, please cite it as below.'
type: software
authors:
  - given-names: Matthew
    family-names: Thompson
    orcid: 'https://orcid.org/0000-0002-1460-3983'
  - given-names: Jeff
    family-names: Wagner
    orcid: 'https://orcid.org/0000-0001-6448-0873'
  - given-names: "Justin B."
    family-names: Gilmer
    affiliation: "Vanderbilt University"
    orcid: 'https://orcid.org/0000-0002-6915-5591'
  - given-names: Umesh
    family-names: Timalsina
    affiliation: "Vanderbilt University"
    orcid: 'https://orcid.org/0000-0002-5430-3993'
  - given-names: "Co D."
    family-names: Quach
    affiliation: "Vanderbilt University"
    orcid: 'https://orcid.org/0000-0002-1255-4161'
  - given-names: Simon
    family-names: Boothroyd
    orcid: 'https://orcid.org/0000-0002-3456-1872'
  - given-names: "Joshua A."
    family-names: Mitchell
    orcid: 'https://orcid.org/0000-0002-8246-5113'
version: v0.1.4
date-released: 2022-01-11
url: "https://github.com/openforcefield/openff-interchange"

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 1,782
  • Total Committers: 17
  • Avg Commits per committer: 104.824
  • Development Distribution Score (DDS): 0.203
Past Year
  • Commits: 527
  • Committers: 6
  • Avg Commits per committer: 87.833
  • Development Distribution Score (DDS): 0.106
Top Committers
Name Email Commits
Matthew W. Thompson m****n@p****m 1,421
Matthew W. Thompson m****n@v****u 135
Josh Mitchell y****i@g****m 78
pre-commit-ci[bot] 6****]@u****m 74
Umesh Timalsina u****a@v****u 21
SimonBoothroyd s****d@h****m 15
dependabot[bot] 4****]@u****m 15
Co Quach d****7@g****m 5
wwilla7 l****a@g****m 4
Jeff Wagner j****l@g****m 4
mattwthompson m****p@g****m 3
Matt Thompson m****n@M****l 2
Justin Gullingsrud j****d@t****o 1
Matt Thompson m****n@c****o 1
Mike Henry 1****y@u****m 1
Justin Gilmer j****r@v****u 1
Richard Gowers r****b@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 251
  • Total pull requests: 330
  • Average time to close issues: 9 months
  • Average time to close pull requests: 20 days
  • Total issue authors: 39
  • Total pull request authors: 16
  • Average comments per issue: 2.22
  • Average comments per pull request: 1.7
  • Merged pull requests: 243
  • Bot issues: 1
  • Bot pull requests: 64
Past Year
  • Issues: 90
  • Pull requests: 121
  • Average time to close issues: 23 days
  • Average time to close pull requests: 10 days
  • Issue authors: 19
  • Pull request authors: 11
  • Average comments per issue: 1.09
  • Average comments per pull request: 1.31
  • Merged pull requests: 78
  • Bot issues: 1
  • Bot pull requests: 32
Top Authors
Issue Authors
  • mattwthompson (151)
  • IAlibay (19)
  • Yoshanuikabundi (12)
  • j-wags (8)
  • pbuslaev (6)
  • lilyminium (5)
  • SimonBoothroyd (5)
  • timbernat (4)
  • mrshirts (3)
  • bieniekmateusz (3)
  • xiki-tempula (3)
  • joelaforet (2)
  • PEFrankel (2)
  • jthorton (2)
  • taidbui (2)
Pull Request Authors
  • mattwthompson (230)
  • pre-commit-ci[bot] (65)
  • Yoshanuikabundi (12)
  • j-wags (5)
  • pbuslaev (4)
  • IAlibay (3)
  • dependabot[bot] (3)
  • benjamindjensen (3)
  • timbernat (2)
  • chapincavender (1)
  • wutobias (1)
  • lukasbaldauf (1)
  • wwilla7 (1)
  • lilyminium (1)
  • JMorado (1)
Top Labels
Issue Labels
bug (33) gromacs (19) openmm (15) feedback needed (12) enhancement (12) documentation (10) virtual sites (10) help wanted (9) lammps (5) ergonomics (4) amber (3) dependencies (3) question (3) needs-info (2) good first issue (2) blocked by topology refactor (2) plugins (1)
Pull Request Labels
dependencies (3) bug (3) feedback needed (2) github_actions (1) gromacs (1) openmm (1) lammps (1)

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 3
    (may contain duplicates)
  • Total dependent repositories: 4
    (may contain duplicates)
  • Total versions: 17
conda-forge.org: openff-interchange-base
  • Versions: 9
  • Dependent Packages: 2
  • Dependent Repositories: 1
Rankings
Dependent packages count: 19.6%
Dependent repos count: 24.4%
Average: 32.5%
Forks count: 41.9%
Stargazers count: 44.1%
Last synced: 5 months ago
conda-forge.org: openff-interchange
  • Versions: 8
  • Dependent Packages: 1
  • Dependent Repositories: 3
Rankings
Dependent repos count: 18.1%
Dependent packages count: 29.0%
Average: 33.3%
Forks count: 41.9%
Stargazers count: 44.1%
Last synced: 5 months ago

Dependencies

.github/workflows/beta.yaml actions
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • mamba-org/provision-with-micromamba main composite
.github/workflows/ci.yaml actions
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • mamba-org/provision-with-micromamba main composite
.github/workflows/examples.yaml actions
  • actions/checkout v3 composite
  • mamba-org/provision-with-micromamba main composite
.github/workflows/changes.yaml actions
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
plugins/setup.py pypi
pyproject.toml pypi
setup.py pypi