Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Steps to apply haMSM restarting to a simulation that ran with the MABB scheme?

82 views
Skip to first unread message

Gabriel Monteiro da Silva

unread,
Mar 5, 2024, 12:22:31 PM3/5/24
to westpa-users
Dear WESTPA community,

Lately I've been using WESTPA to simulate a rare event with an experimentally-measured energy barrier of roughly 32kcal/mol. Although my simulations eventually get there after a few dozen microsecond aggregate time, reaching steady state with classic WESTPA is unlikely and my walkers that reach the target state frequently have -ln(p) of > 100kcal/mol.

I'd like to use haMSM to get more realistic weights, but my system also relies on the minimum adaptive binning scheme to reach the target state. I can get there without MABB if I use nested bins, but I'd like to avoid going back to that since it makes my simulations take much longer.

I understand that haMSM restarting doesn't support MABB straight out of the box. Since I have a binbounds.log file, my intuition is that I should use the contents of this file to iteratively update the bin definitions and mapper in each WESTPA iteration in the HDF5 file from MABB to pure RectilinearBinMapper, and then run the haMSM plugin with the altered HDF5 file.

Is this correct? Are there sample code snipets to achieve this? To clarify, I am happy to write a script and share it with the community if not, just want to avoid reinventing the wheel.

Thank you!


Jeremy Leung

unread,
Mar 6, 2024, 1:49:38 PM3/6/24
to westpa-users
Hi Gabriel,

You can do that, but `msm_we` (the backend that builds the haMSM) already supports custom bin mappers (inputting Rectilinear binning in place of current binning).  However, that option is not currently accessible via the restarting plugin. You can circumvent this in a few ways:

A) I created this branch with changes in the restart driver that allows you to specify a custom binning for haMSM construction in the `west.cfg` similar to how you define bins for the WE run.  Like in the example `west_userbin.cfg` I've attached here, you would specify your Rectilinear binning under `user_bin_mapper:` in the plugin section.
(I haven't extensively tested this. It should work but would be great if you could provide some feedback)

B) you could manually run your west.h5 through msm_we (https://msm-we.readthedocs.io/en/latest/usage.html).

C) Like you mentioned, you can run `w_bins rebin --n-iter N --bins-from-expr [01,2,3,'inf']` on each iteration N to "rebin" the segments of that iteration. (Man page: https://github.com/westpa/westpa/wiki/man:w_bins) However, WE will run so you might lose/gain some segments, which is not ideal. You might have to comment out this line while running w_bins to suppress WE during rebining.

Let me know if this works/helps.

Best,

Jeremy L.

---
Jeremy M. G. Leung
PhD Candidate, Chemistry
Graduate Student Researcher, Chemistry (Chong Lab)
University of Pittsburgh | 219 Parkman Avenue, Pittsburgh, PA 15260
jml...@pitt.edu | [He, Him, His]

west_userbin.cfg

Gabriel Monteiro da Silva

unread,
Mar 6, 2024, 3:12:28 PM3/6/24
to westpa-users
Thanks Jeremy! 

This is excellent and covers everything I need. I will try option A and let you know if I run in any issues that I can't fix from my end. 

Harry Ryu

unread,
Mar 12, 2024, 11:02:15 AM3/12/24
to westpa...@googlegroups.com
Hi Gabriel, thank you for your interest in using haMSM. 

I just wanted to inform you that we recently found a potential bug in the indexing of the cluster centers that may result in inaccurate estimates of steady state distribution as well as different quantities you may calculate from the transition matrix. We are working to resolve this issue and will update the software accordingly. 

Meanwhile, you can use single strata per bin when you're doing the stratified clustering in haMSM which does result in the correct result as it doesn't involve intra-strata indexing. 

I also have a separate code base that performs haMSM analysis (unfortunately without restart plugin) that I would be happy to share. 

Please let me know if you have any questions or comments. 

Best,
Harry 

--
You received this message because you are subscribed to the Google Groups "westpa-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to westpa-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/westpa-users/c8ce12e0-0dbb-43d3-a76a-7ee3e8f74ff2n%40googlegroups.com.

Gabriel Monteiro da Silva

unread,
Mar 12, 2024, 11:10:21 AM3/12/24
to westpa-users
Hi Harry,

Thanks for the heads-up! 

 I haven't actually had the chance to try the haMSM plugin yet as I am busy writing my thesis and giving the simulations a few more weeks to run before I go down that route, so this is very timely.

I'd be happy to try the code you mention, as the analysis part of haMSM is the one I am the most interested in right now. My GitHub account is https://github.com/GMdSilva.

Thank you

Harry Ryu

unread,
Mar 12, 2024, 4:02:11 PM3/12/24
to westpa...@googlegroups.com
Gotcha, sounds good. 

The script can be found here: https://github.com/wryu94/haMSM_script/tree/main

Please let me know if you have any questions. 

Best,
Harry 

Reply all
Reply to author
Forward
0 new messages