Skip to content

Support for chemical bonds crossing the ML-MM boundary in ML/MM simulations using link atoms #160

Description

@epretti

We want to support the link-atom method for ML/MM simulations in which the ML-MM region boundary cuts across one or more bonds. I already have a tentative implementation for mechanical embedding but want to open this issue to solicit feedback about API details and other related matters.

For mechanical embedding, support can be largely automatic, and bonds from the ML region that have been cut and require capping with additional atoms can be identified from the topology and ML region atom indices.

  • Is there any reason to support capping atoms other than hydrogen?
  • Our tests suggest the best approach for positioning the capping atoms is to place them at a fixed distance along the cut bonds. We can guess an appropriate distance using a built-in table of covalent radii. However, we'll want to allow users to override this; would something like linkAtomDistances=[(mlAtomIndex, mmAtomIndex, distance), ...] as a keyword argument for the embedding make sense?

A more general question relates to support for other generic embedding plugins and potential-specific embedding methods. To set up the link-atom method requires adding the appropriate virtual sites, as well as finding the appropriate bonded terms to remove. We don't want each plugin to have to implement this over and over. What kind of customization, if any, will embeddings need to be able to make to this process? (An embedding should also be able to reject ML regions cutting across bonds if it can't support them.)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions