2021-04-22 Wagner/Pulido API planning meeting notes

Date

Apr 22, 2021

Participants

  • @Jeffrey Wagner

  • @Iván Pulido

Discussion topics

Item

Notes

Item

Notes

Perses meeting notes review – Things to cover in API notebook

Use cases

  • Coming in with two separate complete SDFs and a mapping between them

    • Take one Topology, remove the old ligand, put in the new ligand and possibly an atom mapping. As a bonus, get back a hybrid molecule that maps the old and new ligand.

  • Coming in with a protein, and switch to a different protomer/tautomer

    • Load a biopolymer, identify residues, ask OFFTop to mutate one residue into another, slice out the before- and after- residue, and use OEChem to do the MCSS so that Perses can control the atom mapping.

  • Coming in with a protein, switch one residue to another from the chemical components dictionary

  • Coming in with a protein, switch one residue to another NOT from the chemical component dictionary

  • Cut a residue out of a protein, with or without caps. Possibly with caps informed by “undoing” the polymerization reaction (and allow reverse trips).

Other topics

  • Molecule vs. Topology hierarchies

Notebook review



Notes for next Perses meeting

  • For incomplete molecules, eg from extracting an uncapped residue, what output formats are desired? We’d like to avoid having a “substructure” class in OFFTK, so specific classes in OEChem and RDKit would be helpful here.

  • We haven't been able to find peptide bond-making/condensation reactions in CCD or the other places we’ve looked. So, we can provide an API point to do peptide capping with some custom code (possibly borrowing from fragmenter). But it would help to have a specification for which reaction formats a more general “capping method” registry would expect. Or, even better, more guidance to an actual database of this sort of reaction.

Action items

@Iván Pulido Check what the ‘factory’ convention says about <HierarchyElement with (things that distinguish residues> vs a separate class <ResidueHierarchyElement>
@Iván Pulido Does Pydantic support the aforementioned factory convention?
@Iván Pulido How to get reaction information from the CCD?

Decisions