Event notes

  • Follow-up workshops are the riskiest kind of demo - They’re LIVE software demos, and we invite you to run it on your own machine as well. These are intended to be hands-on and technical, so we’ll be discussing both the relevant science and technical aspects of using the tools.

  • This will be recorded, but recording will stop after the end of the notebook Q&A. Feel free to ask questions via voice or chat during the workshop . There is no expectation of privacy in this meeting, either in the recorded or unrecorded parts, so assume it is a public space even after the recording finishes.

  • General plan is for this to be about two hours of prepared material, feel free to interrupt with questions, and if we have a natural stopping point we might take a 5 minute break. After the prepared material we’ll have a developer support session, where we turn off the recording and encourage you to try feeding your own data in or modify the workflow to your liking. During that time we can help out with any problems you encounter.

  • Start the install instructions immediately if you haven’t already - The installation instructions are available on the workshop page, but if you’re not able to install the material for this one locally, you might be best off just following and running yourself later. If you’re having trouble, please mention it in the Zoom chat and switch to the Colab link available on the project page. OpenFF developers will work with you during the dev time to debug your setup.

2024_04_24 Vignettes Workshop

MT and JW will prepare personal meeting links and stage them here

JW – https://us06web.zoom.us/j/83259717547?pwd=ke1l7YiR1UGxTOI1zkFW9Ydorb5hH8.1

MT – https://us06web.zoom.us/j/87885784973?pwd=gnIHcbboXbxdopbG3OBb9kyoUKUYLr.1

Main meeting link - https://us06web.zoom.us/j/87885784973?pwd=gnIHcbboXbxdopbG3OBb9kyoUKUYLr.1

 

Participants

  1. Audrius Kalpokas

  2. Cesar

  3. Eva Notari

  4. Jeff Wagner

  5. John

  6. Josh Mitchell

  7. Luke Zondagh

  8. Matt Thompson

  9. Noora

  10. Pavel Buslaev

  11. Vaclav Hanzl

  12. Vedran Miletic

  13.  

 

Vsites

  • PB – AFAIK, different engines support different vsites. How are you planning to support these in the future?

  • JM – We will pick the appropriate representation for our SMIRNOFF vsites in other engines. But some engines won’t be able to handle them, those will emit an error when you try to export them in Interchange.

  • PB – Will you have two lines of FF, one with vsites, another without?

  • JW – In the distant future, we’ll only have a single FF line that will include vsites. But we won’t include them until we show that they’re worth the performance hit. If it turns out that there’s a type of vsite that improves FF performance a lot and ISN’T supported by the common engines (AMBER, GROMACS, etc), we’ll have a period of time when we release TWO force fields - one with vsites, one without.

 

 

RDKit ligand modification

  • PB – How are conformers generated for the simulation after the chemical change?

  • JW – It’s such a small chemical change (H → F) that we keep the coordinates the same and just minimize to clean it up.

 

Micelle

 

RNA

  • PB – Is it possible to change the coordinates of the structure in the interchange? A potential use case is that you might have multiple monomers of the same NA and want to move it around.

 

JW – Traffic light system?

NCAA

  • PB – In priciple, does NAGL have guards against cases where it will behave poorly?

  • JM – It’s hard to guard for these cases it in general. There are limited guards in NAGL but they can’t be considered to be super safe.

  • PB – So the whole protein uses ff14sb parameters, and the dye uses sage?

  • JM – The dye residue has some ff14sb parameters because of the backbone similarity.

 

  •  

 

Zoom chat

05:00:43 From Jeffrey Wagner to Everyone:
The materials for today’s workshop can be found here: https://docs.openforcefield.org/en/latest/workshops/2024/vignettes.html
05:11:29 From Cesar to Everyone:
can you explain again what is interchange please?
05:12:33 From Cesar to Everyone:
Perfect thanks
05:25:13 From Cesar to Everyone:
I fouy can at some point, could explain a bit more how active sites can be used in applications. Apologies, for me it is a new concept
05:29:26 From Jeffrey Wagner to Everyone:
Virtual sites are a way to more accurately model the non bonded forces in a simulation. For example, some atoms have uneven charge distributions and aren’t well modeled by having just a point charge at their center, so taking some of the charge off their nucleus and putting it a short distance away can make a simulation more accurate.
05:36:08 From Cesar to Everyone:
Reacted to "Virtual sites are ..." with 👍
05:41:34 From Matt Thompson to Everyone:
(QCArchive is normally one of the more stable tools we interact with - we shove millions of molecules through it a year and only rarely have issues pulling them back down)
05:44:02 From Jeffrey Wagner to Everyone:
Reacted to "(QCArchive is normal..." with 🔥
05:44:59 From Matt Thompson to Everyone:
Reacted to "(QCArchive is normal..." with 🔥
05:45:01 From Matt Thompson to Everyone:
Removed a 🔥 reaction from "(QCArchive is normal..."
05:52:38 From pbuslaev to Jeffrey Wagner(Direct Message):
For your information: there is a raised issue within NMRLipids community about openff lipids (https://github.com/NMRLipids/Databank/issues/175). I might take a look at it quit soon in detail, but as for now this is maybe a good community/repository to track/evaluate lipid ff
05:54:06 From Jeffrey Wagner to pbuslaev(Direct Message):
Wow - This is awesome. I’ll share this with the team!
05:54:20 From pbuslaev to Jeffrey Wagner(Direct Message):
Reacted to "Wow - This is awesom..." with 👍
05:55:03 From pbuslaev to Jeffrey Wagner(Direct Message):
I can share additional details if need, so just let me know
05:56:47 From Jeffrey Wagner to pbuslaev(Direct Message):
I’m not super aware of the details, but our science lead, Lily, had done some poking around with lipid validation. Do you mind if she contacts you later if she has questions?
05:58:25 From pbuslaev to Jeffrey Wagner(Direct Message):
Yes, sure. That's fine. Do you need my contacts?
06:00:43 From Jeffrey Wagner to pbuslaev(Direct Message):
Yes please. Are you on our slack/want to be added?
06:01:34 From Jeffrey Wagner to pbuslaev(Direct Message):
(In either case, I’d love to have your email)
06:02:53 From pbuslaev to Jeffrey Wagner(Direct Message):
I guess I am not on your slack but can be useful to be added. Thanks. I guess personal email would be better for this: pbuslaev@gmail.com
06:03:54 From Jeffrey Wagner to pbuslaev(Direct Message):
Great, invite sent.
06:04:05 From pbuslaev to Jeffrey Wagner(Direct Message):
Thanks! Received
06:10:51 From Vaclav Hanzl to Everyone:
Many thanks Josh and Jeffrey! (Have to leave now unfortunately.)
06:11:57 From Cesar to Everyone:
is openFF able to handle cofactors? ATP, NADPH< FAD etc
06:13:11 From Cesar to Everyone:
ok, Thanks
06:18:49 From Matt Thompson to Everyone:
This bug was fixed yesterday, just not in a release yet 🙂
06:19:17 From Jeffrey Wagner to Everyone:
Reacted to "This bug was fixed y..." with 👍
06:29:18 From Matt Thompson to Everyone:
Star Trek hour 😎
06:38:02 From Cesar to Everyone:
very inetresting. Shall we able to expor those charges?
06:38:51 From Cesar to Everyone:
yes
06:49:11 From Jeffrey Wagner to Everyone:
To add on to what Josh said about “NAGL is not an AM1BCC charge assignment method” - this is the current state. Our goal in the coming months is to release a NAGL model that we do endorse for AM1BCC charge assignment, and when that happens, calling offmol.assign_partial_charges(“am1bcc”) will use NAGL when it’s available.

 

Debrief

  • JM –

    • Felt a little more chaotic/pacing was trickier to hold. If we do vignettes again we should focus more on showing what we can do rather than discussing how it all works. I think I covered things well and JW filled in when I missed important details. I think I was most familiar with the notebooks I wrote and less with the ones contributes by JW and MT. Also, if we do this again, we could say that the first hour is more basic stuff and the second hour is more advanced, and so folks might drop in at halftime.

  • MT –

    • Thought it went great. Was half-paying attention and doing other stuff. Most of my ideas for improvement were about “it’d be great if this was green/the tools were out”. I think the pacing was good for an audience of people that don’t work here.

  • JW –

    • Congrats on finishing up the live demos. This year was a big improvement on last year.

    • I forgot to do the #general channel announcement before this one, might be the reason for the low initial turnout

  • The colab env failed on the QCSubmit example because it was broken by OpenEye vs. qcportal/the zstandard thing. I think this issue is more severe than I’ve previously assumed. If we caught this earlier we could have just kept OE from being installed on colab in the first place.

    • JM – Yeah, worth noting that colab is a HUGE pain to use for this.

    • JW – Yes, but it’s also a HUGE win that people can use our whole stack so easily in just a few minutes. Let’s not forget how much of a selling point this is to make attendees believe that our stuff is usable.

    • JM – Possible future self-running WASM notebooks in a few years.

    •  

  • Awesome back-and-forth with PB

  • Pacing seemed a little… rambling? Discussion of lots of good details but also some less important ones. Sometimes I could see things that we could start pre-executing but instead we talked a lot about the previous cell and then had nothing to say while the next one ran. I probably didn’t help by taking away rehearsal time by asking you to spend time on RNA+lipids at the 11th hour.

  • JM – If we do this again, we should reduce the scope/number of bignettes.

  • JM+JW – Maybe some rethinking of how notebooks are transitioned/introduced. Sometimes the audience wouldn’t know at a high level what we were about to see, but they’d hear a few minutes of caveats. So more context at the introduction about what we’re doing and why it’s hard to do in other ecosystems would be good.

 

2024_04_17 Protein prep Workshop

MT and JW will prepare personal meeting links and stage them here

JW – https://us06web.zoom.us/j/83428623890?pwd=wHbKTkQjIYaiGPcTaTcJu14ViZzRUl.1

MT – https://us06web.zoom.us/j/86702973232?pwd=FsOZ7SnXlVBZm3DIb0Ytm8J0Q20jtH.1

Main meeting link - https://us06web.zoom.us/j/85120722786?pwd=Hb4mp4gOkNnjyarG4RLsoR9ClEPDDC.1

 

Participants

  1. Josh Mitchell

  2. Jeff Wagner

  3. Audrius Kalpokas (left at 45 mins)

  4. Nicola Demitri

  5. Thomas Steinbrecher

  6. Kira Campbell (left at 55 min break)

  7. Joao Morado (left at 29 mins)

  8. Pavel Buslaev

  9. Vaclav Hanzl

  10. Surya (left at 55 min break)

  11. Nikolas Rintdorf (left at 45 mins)

  12. John

  13. Dimitras Stamatis (left at 75 mins)

  14. Cesar

  15. Matt Thompson

  16. Magd Badaoui

  17. Abhishek Kognole (left at 77 mins)

  18. Luke Zondagh (left at 23 mins)

  19. Noora Aho JYU (left at 85 mins)

  20. Lisa Castellar (left at 55 min break)

  21. Hannah Turney (joined at 1 hour)

PB – If there’s a big missing part, I might want to simulate the protein with two independent chains. Would that be possible here?

JM – Yes, could removethe loop and replace with NME and ACE

PB – What are the supported termini?

JM – Just ACE and NME, and uncapped/zwitterionic protiens.

(after propka)

PB – How does the protonation consider the ligand?

JM – Propka doesn’t support ligands.

PB – Are you aware of any open source tools that would do this?

JW + JM – Not off the top of our heads. We’ll do a quick check and get back to you though.

 

PB – You’re only mentioning monovalent ions, but there are parameters for calcium and magnesium in OpenFF

  • JM – I don’t think we have them in our FFs

  • PB – They’re in TIP3P-FB

  • JW – That’s a port of an external FF, not recommended for use

(end of talk)

MB – Thanks, super clear. Is it possible to run this on HPC/which files do I need to send over? And which format do you suggest for saving systems?.

JM – Best to save with checkpoints

(General discussion, we don’t quite have best practices for schlepping parameterized systems)

PB – Can do HMR?

MT – Interchange can do HMR in OpenMM and GROMACS. It’s a keyword in the export commands.

Wrap up

  • A reminder about context for this workshop: OpenFF’s ecosystem can load proteins, but it requires them to be “perfect” - protons assigned, no missing atoms. The purpose of this workshop is to help you to get your input to OpenFF’s door without using commercial tools. We’re not arguing that this workflow is better than any commercial product, but rather that there’s a fully open alternative.

  • We’ll be putting a recording of this workshop on Youtube in the coming weeks. We intend to keep these materials online in some form, but feel free to grab a copy in case it gets moved around.

  •  

  • COPY CHAT TRANSCRIPT

04:58:40 From Jeffrey Wagner to Everyone:
The materials for today’s workshop can be found here:
05:00:33 From Jeffrey Wagner to Everyone:
The materials for today’s workshop can be found here:
05:04:51 From Jeffrey Wagner to Everyone:
The materials for today’s workshop can be found here:
05:06:35 From Jeffrey Wagner to Everyone:
The materials for today’s workshop can be found here:
05:07:35 From nicola.demitri to Jeffrey Wagner(Direct Message):
Tried the env.yaml with mamba on an Apple Silicon, which didn't work. That's expected I assume?
(this doesn't block me, I usually work on a Linux VM, and on that I didn't have issues)
05:09:24 From Jeffrey Wagner to nicola.demitri(Direct Message):
Right - We don’t have quite all of our dependencies built for apply silicon yet. We’ve had good luck using Apple’s Rosetta emulation (I work on a Apply Silicon Mac and don’t have any trouble).
05:09:33 From Jeffrey Wagner to nicola.demitri(Direct Message):
A tip for how to get started on that:
05:09:54 From nicola.demitri to Jeffrey Wagner(Direct Message):
Reacted to "A tip for how to get..." with 👍
05:10:00 From Jeffrey Wagner to Everyone:
The materials for today’s workshop can be found here:
05:10:48 From nicola.demitri to Jeffrey Wagner(Direct Message):
thanks! If I ever need to actually work on my local machine, I'll start from there. For now, Linux's ok. Thanks for the early wake up too.
05:10:58 From Jeffrey Wagner to nicola.demitri(Direct Message):
Reacted to "thanks! If I ever ne..." with 👍
05:12:27 From Cesar to Everyone:
I am runnin this in colabfold
05:13:20 From Jeffrey Wagner to Everyone:
Someone wrote in saying that they had trouble installing OpenFF on Apple Silicon. We don’t have all of our dependencies built for apple silicon yet, but the Rosetta emulation layer is perfectly sufficient to run everything (I do all my development work on an apple silicon Mac!)
05:21:55 From Vaclav Hanzl to Everyone:
Works like a charm locally so far :)
05:22:05 From Jeffrey Wagner to Everyone:
Reacted to "Works like a charm l..." with 🎉
05:38:56 From Thomas S to Everyone:
does pdbfixer optimize H-bond networks? Things like Histidine states, GLN flips, etc.
05:40:00 From Jeffrey Wagner to Everyone:
No, but I believe the next step (pdb2pqr) does :-)
05:51:14 From nicola.demitri to Everyone:
Is docking (with this stack and API) deterministic? Will I always get the same few poses?
05:52:03 From nicola.demitri to Everyone:
👍 thanks, I'll take a look at the utils. Just wanted to know if it was an explicit goal or not.
05:53:22 From Cesar to Everyone:
what deterministic means?
05:57:31 From Jeffrey Wagner to Everyone:
Deterministic in this context means “the program will always return the same output”. In a lot of computational chemistry applications, programs either intentionally use random numbers to sample a space, or their output can vary depending on a number of factors at runtime. That is the case for the docking portion of today’s workflow.
06:00:16 From nicola.demitri to Everyone:
Sorry, I missed Cesar's question. Yes, I meant what Jeffrey explained.
06:00:57 From Thomas S to Everyone:
Isnt Autodock based on a random genetic algorithm for Docking? So it would not ever be deterministic?
06:01:02 From Cesar to Everyone:
Reacted to "Deterministic in t..." with 👍
06:02:08 From Jeffrey Wagner to Everyone:
I believe that’s correct, however (if I recall correctly) it’s possible for the user to specify a seed for the random number generator to make it give the same output each time the program is run.
06:02:22 From nicola.demitri to Everyone:
Thomas: sometimes algorithms that include a stochastic component can be made to behave deterministically by providing a seed, as long as the developers have made sure that all random number generators use that seed
06:02:32 From Jeffrey Wagner to Everyone:
Reacted to "Thomas: sometimes al..." with 👍
06:06:45 From nicola.demitri to Everyone:
The fact that connectivity seems broken for some of the waters (rogue oxygens/hydrogens) is because they supposedly cond across PBC edges?
06:06:52 From nicola.demitri to Everyone:
*bond across
06:07:06 From Matt Thompson to Everyone:
Usually yes
06:07:53 From Jeffrey Wagner to Everyone:
I believe so, I’ll confirm with Josh at the next break.
06:08:12 From nicola.demitri to Everyone:
ok. They seemed too many for being just the edge ones, but then again I don't have a innate intuition for dodecahedral boxes (where the edge to inner volume ratio is higher)
06:08:31 From nicola.demitri to Everyone:
Reacted to "I believe so, I’ll c..." with 👍
06:09:32 From Jeffrey Wagner to Everyone:
Reacted to "ok. They seemed too ..." with 👍
06:12:44 From Cesar to Everyone:
Can be MD made determinist as well?
06:13:45 From Thomas S to Everyone:
are 4-point waters coming soon?
06:14:02 From nicola.demitri to Everyone:
Cesar: not with openmm as far as I'm aware (they support seeds, but they adopt a particular approach to seeding which defies detirminism)
06:14:21 From john to Everyone:
Just a side question: Is this the last session of the workshop ?
06:14:46 From Matt Thompson to Everyone:
@Cesar At the level of “if I run or 1 ns, will my positions be the same between runs”: it’s possible with a heroic amount of effort, but almost surely not what you want (it’s typically ensemble- or time-averaged properties that you want, not precise positions)
06:15:50 From Jeffrey Wagner to Everyone:
Reacted to "@Cesar At the level ..." with 👍
06:16:43 From Matt Thompson to Everyone:
@Thomas S there are SMIRNOFF ‘ports’ of some common 4+ site models

Note that virtual site waters (and non-waters) are not supported universally across all engines at the Interchange level (living docs): <https://docs.openforcefield.org/projects/interchange/en/stable/using/status.html>

06:17:40 From nicola.demitri to Everyone:
(Cesar: determinism in this context is maybe only useful for devs developing downstream tools, to test reproducible scenarios, develop numerical benchmarks, or assess stability)
06:19:48 From Cesar to Everyone:
Reacted to "(Cesar: determinis..." with 👍
06:19:57 From Cesar to Everyone:
yeap. I took so long
06:20:50 From Jeffrey Wagner to Everyone:
Replying to "Just a side question..."

This is the final section of today’s Protein Prep workshop (previously we’d run this material in the pacific time zone, but there are no more instances of this material planned after this Atlantic time zone instance). There IS one more OpenFF workshop on a different topic - the vignettes/things to make and do with OpenFF workshop. The information for that workshop can be found here: <https://docs.openforcefield.org/en/latest/workshops/2024/>

06:22:12 From john to Everyone:
Reacted to "This is the final se..." with ❤️
06:25:03 From nicola.demitri to Everyone:
Extremely clear, thanks
06:25:24 From nicola.demitri to Everyone:
HOH999
06:25:31 From Jeffrey Wagner to Everyone:
Reacted to "HOH999" with 😎
06:25:45 From Jeffrey Wagner to Everyone:
Yes, I think it’s exactly something like that.
06:33:58 From Matt Thompson to Everyone:
Interchange.json() dumps out a blob, so something like open(“file.json”, “w”).write(my_interchange.json())
06:35:54 From Matt Thompson to Everyone:
JSON not optimized for size 🙂
06:38:37 From nicola.demitri to Everyone:
Great walkthrough. Thanks Josh and Jeffrey 👏🎈
06:38:47 From Vaclav Hanzl to Everyone:
Thank you for a fantastically prepared workshop!
06:39:24 From Matt Thompson to Everyone:
A good page to have bookmarked for “does Interchange support X?”:
06:40:04 From nicola.demitri to Everyone:
Reacted to "Thank you for a fant..." with 👆
06:40:29 From Magd Badaoui to Everyone:
Reacted to "A good page to hav..." with 👍
06:40:37 From Matt Thompson to Everyone:
(We’ve done plenty of work with protein+ligand+water stuff, and separately work with JSON dumps of smaller Interchange systems, but not so much of doing both at the same time, so that particular detail is not really optimized. If this is important just reach out and we can reprioritize over time)
06:42:50 From nicola.demitri to Everyone:
Replying to "(We’ve done plenty o..."

what's 90MB in this day and age? 🙂 (well otherwise there's binary JSON, which supports bytearrays)

06:43:24 From Hannah Turney to Everyone:
Thank you!
06:43:30 From Matt Thompson to Everyone:
Reacted to "what's 90MB in this ..." with 🙌
06:43:32 From Thomas S to Everyone:
Thanks a lot!
06:43:33 From Matt Thompson to Everyone:
Reacted to "Thank you!" with 🙌
06:43:37 From Matt Thompson to Everyone:
Reacted to "Thanks a lot!" with 🙌

 

Debrief

  • JW –

    • High attrition. Not sure why. I suspect it’s just that the notebook explains itself well.

    • Lots of good questions, especially from PB

    • Let’s discuss best practices for preparing systems and schlepping them on to HPC

      • MT – Is this really our job? There are already places where people teach first year PhDs how to do this. We don’t need to put our hats in this ring.

      • JM – It’d be great if we were the ones teaching first year phds how to do this.

      • MT – It’d be nice but we have to be careful with scoping our responsibilities.

      • JW – I agree that there are already explanations for porting sims to HPC in other ecosystems. But I’m not aware of such a tutorial for OpenMM.

      • JM – I think I’ve read this before.

  • JM

    • Should have code for checking system charge=0. I figured out how to do this for vignettes but didn’t pull it in.

    • Determinism question is good. Would be good to have answers to this and thread seeds through out API. Makes it hard to say things were reproducible

      • JW – I dont' think we should worry about this, let’s just say “reproducible modulo random seeds”

    • Need to be more familiar with JSON API - That’s just pydantic, right?

      • MT – Basically yes

      • JM – I’ll memorize that and figure out how to zip it.

    • Realized that we can’t just move OMM system to another computer because platform might choke

    • Taking ligand into account for better protonation is a good question

      • JW – I don’t think we should get too involved in this kind of question.

    • Divalent ions recommendation was a good question - Apparently we have those from forcebalance? I know gromacs is a big mess because they distribute divalent ion params but they don’t work.

    •  

  • MT

    • I’m thinking a lot about how much of this we want to be responsible for. Very complex question.

  • Things to change for next time?

    • MT – The breadth of vignettes might attract a lot of really hard questions.

    • JM – In a way that might be easier because we’re more allowed to say “we don’t know”

    • JW – Agree

    • MT – No other feedback/ideas for improvement. This went super well IMO.

    • JW – Agree

2024_04_10 SMIRNOFF Workshop

Participants

  1. Jeff Wagner

  2. Josh Mitchell

  3. Matt Thompson

  4. Eva Notari

  5. Abishek Kognole

  6. Hannah Turney

  7. Javier Camargo

  8. Joao Morado

  9. John

  10. Kin Chao

  11. Kira Campbell

  12. Lisa Casteller

  13. Luke Zondagh

  14. Noora

  15. PBuslaev

  16. Surya

  17. Thomas S

  18. Audrius Kalpokas

  19. Anna Herz

  20. Hovine El Khaoudi

  21. Niklas Rindtorff

  22. Goliath/Michael

  23. Alejandro

  24. Vaclav Hanzl

  25. Eduard Neu

  26. Jen

PB – Is it possible to add new parameters? Sage in the newer version would be based on some fitting to fragments/data?

JM – All of our fitting tools and data are out in the open. But they may be a little harder to use. MT, can someone add a parameter to an already-created interchange?

MT – Not easily. Folks should

JW – But to clarify, it’s super easy to add

PB (re protein box simulation) – What if you protein has modifications?

JM – Current workflow has all parameters except for nonbonded for PTM-modified proteins. Come to workshop in a few weeks.

NR – Double checking: When combining forcefields - can we only use OpenFF forcefields (or their ported analogs like AmberFF14 / Bespoke fields)?

JM+JW – Can’t combine at the forcefield level, but we can combine at the Interchange level. Come to the Vignettes workshop later.

after bespokefit

PB – Is there a prior way to estimate how good the torsions would be? schrodinger offers this sort of estimate

JW – That’s a great question. We don’t have the resources to offer this now but it’s something that our governing board has requested.

Recordings of these talk will be uploaded soon

 

Debrief

  • JW

    • Overall excellent

    • Quiet-ish crowd initially. Not much we can do about that. Good Qs in chat. I should remember to verbalize good chat questions.

    • Update Zoom profile pic. Camera-off was a good idea

    • I should set up breakout rooms

      • JM – That is only for webinars

      • JW – MT and I could have our personal meeting room links ready and pull people into those for deployment/tech support.

      •  

  • JM

    • Thought it went well. Recorded rehearsal helped, had an auto-transcript and also wrote a script, didn’t end up using either.

    •  

  • MT

    • Don’t recall anything standing out as desperately needing improvement

    • In openMM bit, during minimization, you use OMM API. Could have used Interchange wrapper.

      • JM – Used OMM API instead of wrapper to localize audience in OMM-land

    • Could relax OMM minimization tolerance (minimization took 581 secs on colab)

      • JM – I could pre-minimize the coordinates in the PDB

    • A few very minor recommendations about rewording/rewriting certain parts, but nothing super important.

    • Seems goldilocks-level well prepared. I thought that was really nice.

      • JM – The first run a few weeks ago may have been under-prepared, but I feel good about this one

 

2024_03_13 Pacific Vignette Extravaganza

Participants

  • Josh Mithcell

  • Jeff Wagner

  • Anika Friedman

  • Binqing Wei

  • Lily Wang

  • Zachary Baker

  • Monsurat Lawal

  • Cesar

  • Mary Pitman

  • Rohith Mohan

  • Xiangwei Zhu

  • Cesar Mendoza Martinez

  • Thomas Coudrat

  • Geregin/Garyk Papoian

  •  

  •  

 

BW – QC notebook complains, wants verify=false Return to this at end of workshop

 

RNA example - Make a workflow diagram showing what we’re doing/which objects go through which ecosystem. (done, opened https://github.com/openforcefield/openff-qcsubmit/issues/269)

 

Chat:

15:01:54 From Jeffrey Wagner to Everyone:
The materials for today’s workshop are available here:
15:03:45 From cesar to Everyone:
Hi from the UK, Scotland
15:06:46 From Jeffrey Wagner to Everyone:
Reacted to "Hi from the UK, Scot..." with 👋
15:11:14 From cesar to Everyone:
OSError: Source 'openff-2.1.1.offxml' could not be read. If this is a file, ensure that the path is correct. Looked in the following paths and found no files named 'openff-2.1.1.offxml':
15:11:47 From Jeffrey Wagner to Everyone:
It sounds like you may have an older environment. Could you run “!mamba list openff” and post the output here?
15:12:42 From Lily Wang to Everyone:
Reacted to "Hi from the UK, Scot..." with 👋
15:13:22 From cesar to Everyone:
# Name Version Build Channel openff-amber-ff-ports 0.0.4 pyhca7485f_0 conda-forge openff-forcefields 2023.11.0 pyhca7485f_0 conda-forge openff-interchange 0.3.18 pyhd8ed1ab_0 conda-forge openff-interchange-base 0.3.18 pyhd8ed1ab_0 conda-forge openff-models 0.1.1 pyhca7485f_0 conda-forge openff-toolkit 0.14.5 pyhd8ed1ab_1 conda-forge openff-toolkit-base 0.14.5 pyhd8ed1ab_1 conda-forge openff-units 0.2.1 pyh1a96a4e_0 conda-forge openff-utilities 0.1.11 pyhd8ed1ab_0 conda-forge
15:13:55 From mary.pitman to Everyone:
Is interchange fairly stable at this point?
15:15:26 From Jeffrey Wagner to Everyone:
Replying to "# Name Version Build..."

15:16:58 From Jeffrey Wagner to Everyone:
Replying to "# Name Version Build..."

15:18:52 From cesar to Everyone:
Replying to "# Name Version Bui..."

15:20:39 From Jeffrey Wagner to Everyone:
Reacted to "Great, it works now...." with 🎉
15:26:38 From cesar to Everyone:
can you explain please, where we can use virtual sites?
15:26:48 From cesar to Everyone:
I know a silly question
15:27:06 From cesar to Everyone:
form a chemistry level
15:27:48 From cesar to Everyone:
yes
15:27:53 From cesar to Everyone:
thanks!!
15:28:04 From Jeffrey Wagner to Everyone:
Reacted to "thanks!!" with 👍
15:28:33 From Binqing Wei to Everyone:
Are there VS on sulfur atoms in heteraryl ring?
15:29:19 From Jeffrey Wagner to Everyone:
I think, to expand on Josh’s answer - there ARE some force fields out in the world with virtual sites - Schrodinger’s OPLS3e and 4 (I believe) has some vsites.
15:29:52 From Binqing Wei to Everyone:
Replying to "I think, to expand o..."

15:31:03 From Jeffrey Wagner to Everyone:
Replying to "Are there VS on sulf..."

15:32:54 From Jeffrey Wagner to Everyone:
Replying to "I think, to expand o..."

15:34:49 From cesar to Everyone:
can we use here gpus?
15:36:13 From Lily Wang to Everyone:
Reacted to "My understanding is ..." with 👍
15:36:20 From Jeffrey Wagner to Everyone:
Replying to "can we use here gpus..."

15:36:43 From cesar to Everyone:
Reacted to "The parameter assi..." with 👍
15:38:10 From Jeffrey Wagner to Everyone:
Replying to "I think, to expand o..."

15:44:03 From cesar to Everyone:
does this work as a kind of benchmark!
15:44:06 From cesar to Everyone:
?
15:44:54 From Thomas Coudrat to Everyone:
you're muted Josh
15:46:19 From Josh Mitchell to Everyone:
Reacted to "you're muted Josh" with 🤦
15:46:43 From cesar to Everyone:
if we can compare our results with hte database
15:48:11 From cesar to Everyone:
Thanks!!
15:49:40 From Thomas Coudrat to Everyone:
I have to leave at the hour unfortunately: is this being recorded? The workshop part, not the following discussion. Thanks!
15:50:40 From Jeffrey Wagner to Everyone:
Replying to "I have to leave at t..."

15:50:59 From Thomas Coudrat to Everyone:
Replying to "I have to leave at t..."

15:54:26 From Jeffrey Wagner to Everyone:
Replying to "if we can compare ou..."

16:03:17 From mary.pitman to Everyone:
If you give pac_box too high of densities will it put everything in the box?
16:07:07 From mary.pitman to Everyone:
Sounds like a safety
16:07:13 From cesar to Everyone:
That is so cool!!. Have you tried an see with small molecules and lipids?

 

Debrief:

  • Overall:

    • Generally went well. Participants were very engaged. Especially Binqing and Mary.

    • Lots of material for not a lot of time. Are there topics that could be cut?

      • QCSubmit? Could be its own workshop.

    • Pace is good for an audience that’s just watching. But it’s hard to split attention when running the notebooks yourself.

      • Maybe just have the audience follow for this workshop? They’ll have materials

    • We had a good exchange with Mary about valdiity/correctness of nagl charigng a whole modified protein. So “stop light” system nucleates good discussions.

  • Things to change

    • Stop using interchange +, use combine instead

    • Change order?

      • JW – Could put nagl early and then use it for rdkit modification?

      • JM – I don’t think so, the conceptual layout right now is pretty solid.

    • Make NAGL comparison yellow?

      • JM – That’s a good idea, but I wouldn’t change the order

    • JW – Could be good to pre-run more examples

      • LW – Pausing-for-running breaks gave folks a good chance to catch up/get back on board/generate questions

      • JM – I didn’t feel like the timing was bad. Though pre-charging DLPC was a good change (and introduces charge_from_molecules). But I’ll pre-run the rdkit ligand modification one.

    • JW – Could be good to loop trajectories at the end or otherwise have more of a “ta da!” conclusion before continuing on to next notebook.

    • Add a workflow diagram to RNA simulation

      • LW – I understood it alright, but I’m already an expert. The big function made sense to me.

      • JW – I think a diagram would help a lot, and a bit more rehearsing for this one.

    • Add lipid to RNA sim?

      • JW – Our partners would absolutely love lipid+RNA sims

      • JM – Do we know of a system with RNA+lipids that we can simulate? Everything in the literature is way too big.

    • Add charge comparison vs ff14sb to NCAA+NAGL workshop

    • Move solvation code to the front of RNA vignette

    • Maybe refactor RNA notebook to have membrane+cholesterol already packed/in a micelle. Could remove the RNA-from-rdkit part as well and just have it pre-placed. Might require some more scientific justification (why is this RNA next to a micelle?) but could be worth it.

    •  

2024_02_27 Pacific Protein Prep workshop

Participants

  • Ely Fazelpour

  • Binqing Wei

  • Lev Tsidilkovski

  • Monsurat Lawal

  • Omer Osman

  • Thomas Coudrat

  • Xiangwei Zhu

  • Theodore L Fobe

  • Tarini Hardikar

  • Mary Pitman

  • Lucia Vinalopez (left @ 1 hour mark, during solvation)

  • Cesar Mendoza Martinez

  • Anshuman Kumar

  • Johannes Loffler

  • Akim Guseynov

 

 

Recommendations for open source ligand proton assignment?

  • (General) Nobody knows of a broadly-accepted “best” option. Could be a good discussion.

Running on WSL 1/2

Future of this workflow? Will folks use this in their work? Should we make more workshops like this?

  • MP – Yes, this is more straightforward that what I’m doing.

TC – What are the gotchas in this workflow?

  • JM – Impossible to enumerate all of them.

Feedback

  • TC – Colab run looked slightly different -

  • These steps shouldn’t be assumed to be reproducible

 

Need to fix “sage can handle anything made of CHONPS - Include halogens!

Chat log

You (Feb 27, 2024, 2:59 PM)
The materials and install instructions for this workshop are available here:
The materials and install instructions for this workshop are available here:

You (Feb 27, 2024, 3:07 PM)
The materials and install instructions for this workshop are available here:

Omer Osman (Feb 27, 2024, 3:09 PM)
Fyi— would be great if the Installation instructions for Mac link to Apple Silicon Mambaforge as opposed to Intel (error message is unclear since error says “you are trying to install 64-bit version while your machine is not 64-bit”)

Thanks for the feedback - I need to double check whether all of our dependencies are available as osx-arm packages. In particular, some of the QM stack was slow on updating, so it may be a good time for us to run through all that and see what the current status is :-)

Binqing Wei (Feb 27, 2024, 3:16 PM)
Getting an error:
URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:1007)>

Binqing Wei (Feb 27, 2024, 3:16 PM)
On cell 3

mary.pitman (Feb 27, 2024, 3:17 PM)
Agreed on the strict PDB thing.. I realized that recently.

You (Feb 27, 2024, 3:17 PM)
Binqing, are you working from a corporate network that might not have access to the outside internet?

Thomas Coudrat (Feb 27, 2024, 3:18 PM)
Running into an error as well: I'm running the jupyter notebook inside VScode. Installed the env.yml mamba env, loading this kernel in VScode and it complains with the following: "The version of Python associated with the selected kernel is no longer supported. Please consider selecting a different kernel. --source Jupyte"

Thomas Coudrat (Feb 27, 2024, 3:19 PM)
Will follow along with the Colab in the meantime

Thomas Coudrat (Feb 27, 2024, 3:20 PM)
As a low effort attempt, I tried changing env.yml to force py311, but there are conflicts

Binqing Wei (Feb 27, 2024, 3:18 PM)
Must be it. Will download the file manually

You (Feb 27, 2024, 3:20 PM)
Which operating system are you using, Thomas?

Thomas Coudrat (Feb 27, 2024, 3:21 PM)
Running on Windows, but actually connected via SSH to a Linux workstation. So Linux :)

Thomas Coudrat (Feb 27, 2024, 3:23 PM)
OK thanks!

mary.pitman (Feb 27, 2024, 3:26 PM)
Would espaloma or NAGL support SEP or other nonstandard residues?

mary.pitman (Feb 27, 2024, 3:43 PM)
Definitely the right spot

mary.pitman (Feb 27, 2024, 3:45 PM)
“Know the answer”

You (Feb 27, 2024, 3:46 PM)
I totally didn’t look at the PDB entry. This is 100% my years of expert med chem knowledge 😉Today

mary.pitman (Feb 27, 2024, 3:47 PM)
That is a bad sign

mary.pitman (Feb 27, 2024, 3:52 PM)
Best volume obviously

mary.pitman (Feb 27, 2024, 3:53 PM)
I understand your excitement

Theodore L Fobe (Feb 27, 2024, 3:54 PM)
Hmmmm, I seem to be having an issue with the dockstring package. I'm getting this error: Exec format error: PosixPath('/home/lenny/miniforge3/envs/openff-docs-examples/lib/python3.10/site-packages/dockstring/resources/bin/vina_linux')
I'm also running things on WSL, so my mamba environment might not be properly setup

You (Feb 27, 2024, 3:55 PM)
Is it WSL talking to a linux cluster, or just WSL? If I recall there’s a WSL1 and 2, and I think some of our users may have had success on 2, but not 1.

Thomas Coudrat (Feb 27, 2024, 4:11 PM)
No halogens in Sage?

Thomas Coudrat (Feb 27, 2024, 4:18 PM)
General question: I forget where I found the link to sign up to this workshop. Can I simply share the zoom link with colleagues for them to join, or would you prefer people signing up?

Josh Mitchell (Feb 27, 2024, 4:22 PM)

mary.pitman (Feb 27, 2024, 4:06 PM)
RDKit (and OpenFF) treats some things like radicals that are not onnected via SSH to a Linux workstation. So Linux :)

Thomas Coudrat (Feb 27, 2024, 3:23 PM)
OK thanks!

mary.pitman (Feb 27, 2024, 3:26 PM)
Would espaloma or NAGL support SEP or other nonstandard residues?

mary.pitman (Feb 27, 2024, 3:43 PM)
Definitely the right spot

mary.pitman (Feb 27, 2024, 3:45 PM)
“Know the answer”

You (Feb 27, 2024, 3:46 PM)
I totally didn’t look at the PDB entry. This is 100% my years of expert med chem knowledge 😉

mary.pitman (Feb 27, 2024, 3:47 PM)
That is a bad sign

mary.pitman (Feb 27, 2024, 3:52 PM)
Best volume obviouslyradicals though.. and they end up tripping the radical warnings in OpenFF (like a positively charged nitrogen that is not protonated in an aromatic ring)

Theodore L Fobe (Feb 27, 2024, 4:25 PM)
Just confirming after updating WSL1 to WSL2 was able to run the ligand docking step

Thomas Coudrat (Feb 27, 2024, 4:27 PM)
yes, great to understand how you're suggesting to arrive at the OpenFF tools

Theodore L Fobe (Feb 27, 2024, 4:27 PM)
I wonder if GH actions will eventually have WSL builds for devs to easily deploy on WSL
I started with a dual boot Windows+Linux system, but that's a bit of a headache to maintain

Tarini Hardikar (Feb 27, 2024, 4:21 PM)
I need to solvate and model metaloproteins, you said earlier this isn’t supported here. Any suggestions for alternative software?

mary.pitman (Feb 27, 2024, 4:31 PM)
You can’t set seeds for some things in OpenMM for “reasons”

Theodore L Fobe (Feb 27, 2024, 4:34 PM)
The scientists at DESHAW are working on it 😂

Xiangwei Zhu

Theodore L Fobe (Feb 27, 2024, 4:35 PM)
Great workshop! Thanks for sharing

Binqing Wei (Feb 27, 2024, 4:35 PM)
Thanks!

Debrief

  • JM

    • That went well. Had good audience feedback. MPitman was great with the hand-raising, we should ask for that again.

    • Topology.from_pdb was slower than I thought. Everything else was roughly on pace. Setting OMP_NUM_THREAD to a smaller number was good.

    • I liked the vibe, we could be open about the robustness of workflow and stuff.

    • Was good to have justification of why we’re doing a workshop on stuff that helps people GET stuff to our doorstep.

  • JW

    • We had a nice, bustling chat going, but I’m worried it may have distracted folks. But overall I think this is a better situation than slowing down the speaker to accomodate the chat, or restricting chats to DMs.

    • Like half the attendees interacted with us in some way, which was great.

  • JW – This came off a lot more polished, nice work

    • JM – It might be my familiarity with the material

  • JW – Was good that we showed how to start colab, even though we couldn’t show the terminal mamba install. I think we should just do this for future workshops.

    • JM – Agree

  • Maybe we can be a little clearer about how far we endorse this workflow - Like “this seems pretty useful, but this isn’t something we systematically use this internally and you’re still responsible for the correctness of each step!”

2024_02_20 Pacific SMIRNOFF workshop

 

Participants:

  1. Josh Mitchell

  2. Jeff Wagner

  3. Ashwin

  4. Ben Cree

  5. Binqing Wei

  6. Byungchan Kim

  7. Elhamfezelpour

  8. Gargein Papoian

  9. Lev Tsidilkovski

  10. Monsurat Lawal

  11. Pablo Arantes

  12. Rohith Mohan

  13. Satish Kumar Iyemperumal

  14. Xiangwei Zhu

  15. Rina Mansour

  16. Roumi

  17. Jon Sutter

 

Chat:

Satish Kumar Iyemperumal (Feb 20, 2024, 3:28 PM)
Apologies - have to sign off. Thanks for the intro - will check out the recording later.
Satish Kumar Iyemperumal left

Garegin Papoian left
Pablo Arantes left
Garegin Papoian joined as a guest

Xiangwei Zhu (Feb 20, 2024, 3:35 PM)
Hi Josh, does it need to specify the charge of the small molecule in a particular pH?
Ashwin left
Garegin Papoian left

You (Feb 20, 2024, 3:37 PM)
Yes, the molecules need to have explicit hydrogens to be loaded into OpenFF, so the user is responsible for determining the protonation state before loading into an OpenFF Molecule.

Xiangwei Zhu (Feb 20, 2024, 3:39 PM)
Thanks, Jeff.
Roumi joined as a guest
rina mansor left

elhamfazelpour (Feb 20, 2024, 4:13 PM)
Can this be used for membrane proteins?

Xiangwei Zhu (Feb 20, 2024, 4:13 PM)
what other protein force fileds are available in openFF?

elhamfazelpour (Feb 20, 2024, 4:13 PM)
Like protein bound into membrane
Thank you.

Ben Cree joined as a guest

Byungchan Kim (Feb 20, 2024, 4:29 PM)
What happens if you don’t provide input force field?

 

At end of notebook - STOP RECORDING

  • Thank you for rolling with our technical issues

  • Q&A

  • Anyone have deployment/issues?

 

Debriefing

  • Specific

    • JW – I’m very surprised that ~half the registrants didn’t join at all

      • JM – Maybe we were overly cautious about zoom bombers

    • JM – We went WAY longer than I expected (1:40)

    • Debug why Josh’s computer mic didn’t work

      • JW – DD has the exact same thing.

      • JM – My computer has better audio and lets me hear myself so I speak better. I have a macbook and stuff so I can fall back to those.

      • JW – Let me know if I can help debug.

    • Make SMIRKS diagram larger

      • JM – I was at 170% zoom during this presentation

    • Add this pic for interchange matrix rep

      • Add comments for the tricky indexing stuff (interchange matrix form section parameter setting)

      • Add context for Interchange matrix forms - “this would be really useful for folks doing ML”

    • The install/local run instructions were a little rough - could use polishing/more context.

  • General

    • Good question invitation cadence

      • JM – Let’s just open to “interruption” questions for the next one

      • JW – Sounds good, I’ve updated my intro notes to say that.

    • JM – Material was finished very soon before workshop, so not much time for practice. Maybe a dummy run before the workshops next time?

      • JW – That could be a good idea. Could run it for an internal audience.

    • JM – Would have appreciated more questions to get a sense of audience pace, even if they were interruptions

    • Create environment as part of the talk - Could switch share between windows terminal to screen

      • (General) – Probably not necessary, but a quick jupyter intro (press shift+enter to run, etc) would be good

    • JW + JM – A bit rambling - More prep would be good, will have time for this before the second run.

    • I wonder if people attended the first workshop hoping to get a general intro. May be good to do a “general intro” workshop first each year to catch those folks.

      • JM – Low turnout could have been people seeing the materials and deciding it wasn’t for them

    • No verbal comments - Mostly text chat. Could be a oceania region thing? Though I expect we’ll have similar outcomes for the other time zones too.

Action items

  • JW will send materials earlier and make them less scary in case the “30 minutes before” email spooked folks.

  • Come up with a better way to do pacing cues.

  • JM will make a waiting slide (or use Jeff’s)

  •