2022-07-20 Davel/Wagner Meeting notes

 Date

Jul 20, 2022

 Participants

  • @Jeffrey Wagner

  • @Connor Davel

 Discussion topics

Item

Notes

Item

Notes

General updates

  • CD – My computer is broken, today is just audio

  • JW – I’ll be offline Thurs and Fri of this week

  • CD – What’s bespokefit?

    • JW – (high-level explanation)

  • CD – Will aim to wrap up final product for next week

    • (Added a meeting next Thursday)

Connor update

  • CD – Stuff I’ve worked on

    • Improvements to monomer fitting algorithm (which fits monomers into overall polymer).

      • 1) I made it so json monomers need to have the same inter-monomer bond order to match as neighbors. This was surprisingly complex but it works

      • 2) I improved matrix-tiling algorithm’s time complexity. Previously it was iterating over all ways to fit monomer over polymer. Now it generates fragments of monomers to fit into polymer. Previously, sometimes the mappings could get stuck (like ethylene or PEG where everything could be shifted one atom to the right).

        • Imagine PEG - A repeating polymer of COC motifs. The polymer could be defined as CCO, but this means that the initial match has to pick a “direction” - Maybe if it goes right, the tiling works, but if it goes left, the tiling is impossible.

      •  

  • CD – I found it necessary to make the isomorphisms searching strict with respect to valence number.

    • JW – That should be OK - Based on our previous meeting notes, it’s OK to include valence (the X decorator) in substructure information.

    • JW – Ask about inter-monomer bonds/negative map atom indices

  • CD – Made some changes about how monomer library works - Substructures have bonds to a wild type atom, and the bond is the correct order.

  • CD – Have some functionality about if a monomer has more than 2 caps.

  • CD – Started some work on Jupyter GUI for a user to inspect where their monomers were assigned to their polymers. So it will highlight where monomers will match to polymers, and it won’t highlight areas of the polymer where it wasn’t matched. Kind of at a branching point - I could:

    • Make this more read-only - Prioritize clearly showing user which monomers matched where, and what areas of the polymer weren’t matched

    • Make this more interactive - Prioritize keeping the functionality to change chemistry in there so users could interactively correct/extend monomer library

  • Could make a sort of combination of the two - Show a polymer that is partially recognized, but highlight the parts that weren’t recognized in a particular color. Then let the user assign some info to an unknown region, save that as a substructure, and then reload/rerender the polymer with the new monomer appended to the substructure library and repeat.

    • (Added to to-dos)

Previous to-dos

Rollover items

  1. CD will try loading all existing homopolymer PDBs with two connection points (except vulcanized rubber)

  2. Check/fix what happens to protein C terminal oxygen charge (or make terminal group behavior more robust)

  3. Extend tools to be able to help users “debug” PDBs that can’t be fully loaded - Like, if they try to load a PDB with a PEGylated amino acid, the program could output a view of the unrecognized atoms and some context, and ask the user to fill in the missing info. It’s fine if this doesn’t use the interactive GUI, but rather just outputs 2D images to PDF or something.

New to-dos

  • (Kind of overlapping with above) Show a polymer that is partially recognized, but highlight the parts that weren’t recognized in a particular color. Then let the user assign some info to an unknown region, save that as a substructure, and then reload/rerender the polymer with the new monomer appended to the substructure library and repeat.

 Action items

 Decisions