Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hydrogen Bonding Analysis #197

Open
ALescoulie opened this issue Sep 13, 2021 · 10 comments · May be fixed by #199 or #225
Open

Hydrogen Bonding Analysis #197

ALescoulie opened this issue Sep 13, 2021 · 10 comments · May be fixed by #199 or #225
Assignees
Labels
Milestone

Comments

@ALescoulie
Copy link
Contributor

mdpow.analysis.hbond

The final analysis I would like to implement is quantifying hydrogen bonding between the solute and solvent. I figure this shouldn't be too difficult in MDAnalysis. This will round out the initial three analyses built using the EnsembleAnalsis framework.

@ALescoulie ALescoulie added this to the 0.8.0 milestone Sep 13, 2021
@ALescoulie ALescoulie self-assigned this Sep 13, 2021
@orbeckst
Copy link
Member

This might need a rewrite of EnsembleAnalysis to directly use a full analysis over a Universe. If so, first raise a separate issue for those changes to the framework and then come back here.

@orbeckst
Copy link
Member

Have you figured out how much work it is going to be to add h-bond analysis?

@ALescoulie
Copy link
Contributor Author

I looked at the MDAnalysis docs and think it will not be too much work to implement a H-Bond analysis. I want to try making a decorator that runs an AnalysisBase subclass i, It would simply require making a few generic methods for saving the results for each ensemble.

@ALescoulie
Copy link
Contributor Author

I'll have a draft pull request for EnsembleWrapper up hopefully by tonight. I'm writing it as a decorator for AnalysisBase. It does add a new class, but it's fairly rudimentary, just passing data into the original Analysis.

@ALescoulie ALescoulie linked a pull request Sep 24, 2021 that will close this issue
1 task
@orbeckst orbeckst modified the milestones: 0.8.0, 1.0 Dec 27, 2021
@orbeckst
Copy link
Member

orbeckst commented Sep 8, 2022

@cadeduckworth here's the issue for adding H-bond analysis, in case you want to have a go.

Perhaps @ALescoulie could help with reviewing once you get a PR up?

@cadeduckworth
Copy link
Contributor

Yes that sounds great! I am reading through the MDAnalysis docs now. There is an 'autocorrelation' module for hydrogen bond calculations that may also be of use.

@cadeduckworth
Copy link
Contributor

cadeduckworth commented Sep 9, 2022

After playing around with it, it appears that the most useful information can be obtained by specifying the solute of interest as an acceptor for one run, specifying the solute as a donor for another, generating data frames from each of these two (results)arrays, and then concatenating the data frames. So far it seems like this is the quickest way to get information only pertaining to H-bond accepting/donating by the solute. I think there are more complicated alternatives available regarding combined selection methods, and I will continue to experiment. However, using the split acceptor/donor method I explained above results in some overlap of the internal H-bonds, which can possibly be selectively removed when concatenating the two data frames and sorting or grouping. I am going to try out a few more things and then upload the notebook to a private repository so y'all can review the output generated so far. From my examples it seems that it would not take much more work to implement ensemble analysis once we decide the best options for acceptor/donor selections.

@orbeckst
Copy link
Member

orbeckst commented Sep 9, 2022

You should not need to do two runs. If you define donors and acceptors appropriately then you should only need one run and then you can sort the resulting list of H-bonds appropriately. Generally, we really want to avoid to analyze trajectories too often and rather work with generated data.

@orbeckst
Copy link
Member

orbeckst commented Sep 9, 2022

@cadeduckworth
Copy link
Contributor

cadeduckworth commented Dec 15, 2022

@cadeduckworth
-reminder for myself to create a pull request
EDIT: and add the module I developed some time ago

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
3 participants