2022-04-20 Mitchell/Wagner Check-in meeting notes

Participants

  • @Josh Mitchell

  • @Jeffrey Wagner

Discussion topics

Item

Notes

Item

Notes

General updates

  • JW – Pushing topology refactor forward. OpenFE will start using it for their dev work. You may see PR traffic and stuff from them (Richard Gowers, Irfan Alibay, Mike Henry, David Swenson)

  • JW – Thanks for responding to BSwope - Kind of a standoff due to me being focused on technical work, JH waiting for SB, and SB being out of billable hours.

  • Toolkit 0.10.5 release was made - Major fixes to virtualsites (almost entirely written by Simon)

  • JM – Got theory docs merged for bespokefit

  • JM – Went over bespokefit docs more closely

  • JM – Interchange examples are merged

  • JM – Did first pass of QCSubmit docs to use markdown instead of rst, use the new theme, polish wording.

  • JM – Big discussion on topology future, seems to be petering out. Topologies could use a visualize method, better control of positions, Interchange needs to not expose topology.

    • JW – I’ll try to weigh in on this if I can get the topology refactor MVP out to OpenFE.

    • (Discussion about conformers vs topology positions)

    • (General) – We had previously decided to have a topology have positions, which would just be a view into the first conformer of each molecule in the topology

    • JW – I had imagined users only ever interacting with Interchange objects that have parameters assigned. To expose them to the idea that they sometimes wouldn’t is a bit scary to me.

    • JW – Putting velocities on topologies is a great idea.

    • JW – Topology visualization is a great idea

    • Topology.from_sdf is going to be complex, I think we should avoid it for now

    • Topology.from_pdb could be a good idea, but let’s handle Molecule.from_pdb first. Then topology.from_pdb will just be running that in a loop

    • Topology visibility on Interchange - We’d want to close off access to

      • add_molecule

      • add_constraint

      • (we should delete add_particle… what the heck is that?)

    • How do we reduce access to oly allow users to reach these methods?

      • FrozenTopology

      • careful getattr

      • TopologyView + Monkey patching out API points

    • Some special API points should be threaded through and accessible at the Interchagne level (like Interchange.to_openmm_topology)

 

class TopologyView(Topology): def __init(self, other: Topology): # Have self.positions be a REFERENCE to the real positions self.positions = other.positions ... def add_molecule(*args, **kwargs): return NotImplementedError def add_constraint(): return NotImplementedError class Interchange: @property def topology(): return TopologyView(self._topology)

 

def to_openmm_topology(self, *args, **kwargs): return self._topology.to_openmm(*args, **kwargs)

 

Todos

  1. (high) QCSubmit users guide (in progress)

  2. (high) Interchange pre-release prep

  3. (medium) Toolkit docs cleanup

  4. (medium) Toolkit revised user guide (+-unifying/centralizing package user guides)

  5. (medium) Come up with “milestones” for making first of three videos this year (like, “first video on covid spike protein and small molecule, filmed this day, edited in that range, etc…”)

  6. (medium) bibtex blocks for website “how to cite” page on http://openforcefield.org

  7. (low) Propose policy for using GH citation machinery

  8. (low) Check main website for broken links

  9. (low) migrate docs to be under http://openforcefield.org domain (openforcefield/status would be base project repo)

  10. (low) Conda env yamls for each release (automated inside of Toolkit’s single-file-installer action)



Action items

Decisions