Skip to content

Commit

Permalink
DOC: Document topology/positions quirk
Browse files Browse the repository at this point in the history
  • Loading branch information
mattwthompson committed Oct 7, 2024
1 parent d76fe0e commit 4037e9d
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions docs/using/edges.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# Sharp edges

## Quirks of core OpenFF objects

Future refactors may remove the side effects of these quirks, but currently there are some
surprising inconsistencies in some API points between different OpenFF tools.

### Contents of `Interchange.topology` and `Interchange` may not always be in sync

Currently, the `Interchange.topology` attribute is defined by the OpenFF Toolkit's `Topology` object, which is feature-rich in cheminformatics functionality but not designed for MM interoperability. Most importantly, that representation does not include virtual sites (because molecules do not have virtual sites/dummy atoms). As a result, functionality involving virtual sites must go through `Interchange` API points instead of `Interchange.topology`.

For example, `Interchange.topology.get_positions()` will never include positions of virtual sites. To get the positions of a system with virtual sites included, use `Interchange.get_positions(include_virtual_sites=True)`. The default behavior of `Interchange.positions` is also to return positions without virtual sites.

## Quirks of `from_openmm`

### Modified masses are ignored
Expand Down

0 comments on commit 4037e9d

Please sign in to comment.