The first part is easier to illustrate if we use the same lag time for the good and bad discretization, that way it shows that the good discretization passes the MSM CK-test while the bad one fails, while the HMM should work with both discretizations
The three-state poor discretization example is nice. Show some reference line in the ITS plot that illustrates that the HMM recovers the true timescale obtained from a good discretization.
I suggest to do a short version of the analysis notebook again with the HMM. Things like plotting the transition work, computing the TPT flux, computing mfpts etc. are now very easy to do. The same with visualizing structures. I suggest to fix the analysis notebook first and then just repeat those parts of the analysis that can be done in the same way.
Again avoid invoking MSM.coarse_grain. I was tempted to retire this functions, but we will likely replace the HMM estimation implementation by something else in the future.
HMM stuff: