PyRosetta.notebooks icon indicating copy to clipboard operation
PyRosetta.notebooks copied to clipboard

added loop modeling chapter + accompanying files

Open kathyle9 opened this issue 5 years ago • 7 comments

kathyle9 avatar Dec 24 '19 06:12 kathyle9

GenKIC should be fully configurable from PyRosetta. I know that @weitzner has done it. The current GenKIC tutorials (https://www.rosettacommons.org/demos/latest/tutorials/GeneralizedKIC/generalized_kinematic_closure_1, https://www.rosettacommons.org/demos/latest/tutorials/GeneralizedKIC/generalized_kinematic_closure_2, https://www.rosettacommons.org/demos/latest/tutorials/GeneralizedKIC/generalized_kinematic_closure_3, https://www.rosettacommons.org/demos/latest/tutorials/GeneralizedKIC/generalized_kinematic_closure_4) are for RosettaScripts, but there's an almost 1:1 correspondence between how you configure GenKIC there and how you configure it in PyRosetta.

vmullig avatar Dec 25 '19 06:12 vmullig

Here is genkic in pyrosetta. I have pythonized GenKic into a class (https://github.com/jwillis0720/PyRosetta_helper/blob/master/pyrosetta_helper/GenKic.py) in my small library called PyRosetta_helper. I'm not sure where to put just pyrosetta code that may be helpful that acts as an independent library so I just have my own libraries. Would it ever be worth integrating those somewhere @jadolfbr ?

Here is a GK demo replicating vikram's tutorial. I'm not sure it would be described as an easy 1:1 mapping but the code base in c++ has a ton of getters and setters so it's not so bad.

https://github.com/jwillis0720/PyRosetta_helper/blob/master/tutorial/GK_Demo.ipynb https://github.com/jwillis0720/PyRosetta_helper/blob/master/tutorial/GK_Demo.ipynb

On Dec 24, 2019, at 11:58 AM, Jared Adolf-Bryfogle [email protected] wrote:

@jadolfbr requested changes on this pull request.

So - no one really makes a loop foldtree from scratch anymore. I would preface that section with this info. That we are reviewing how to manually create a loop foldtree to help the user understand fold trees, but generally one would use the foldtree_from_loops function that takes a loop object, a pose, and an empty foldtree:

protocols::loops::fold_tree_from_loops(pose, *loops, ft); pose.fold_tree(ft); protocols::loops::add_cutpoint_variants(pose);

The loops need cutpoint variants - in your notebook, you do this manually, which is fairly error prone. If you create the FT first, and then use the variants function, this is done automatically.

The rest of it looks OK - but fairly out of date. There has been much in the way of GenKIC from @vmullig https://github.com/vmullig and Next-Gen kic from the Kortemme lab. I'm not sure how to use them in PyRosetta, but they should at least be mentioned. I believe NGK is a mover, while the general setup of GenKIC is through PyRosetta scripts. There is documentation for these on the doc wiki, and I would add that to the bottom of the page. I would also add the NGK paper reference to the top and if @vmullig https://github.com/vmullig has a reference for GenKIC. Other than that, it looks good. I'll be able to go through it line by line after Christmas.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/RosettaCommons/PyRosetta.notebooks/pull/28?email_source=notifications&email_token=AAF5OKJKERIKLM27ELJVLQTQ2JEVVA5CNFSM4J63CKFKYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCQFNLXA#pullrequestreview-336254428, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAF5OKMZH77AFR4CUMK4W3TQ2JEVVANCNFSM4J63CKFA.

jwillis0720 avatar Dec 25 '19 09:12 jwillis0720

Nice! Thanks, Jordan!

On Wed, Dec 25, 2019, 4:09 AM Jordan Willis, [email protected] wrote:

Here is genkic in pyrosetta

https://github.com/jwillis0720/PyRosetta_helper/blob/master/tutorial/GK_Demo.ipynb < https://github.com/jwillis0720/PyRosetta_helper/blob/master/tutorial/GK_Demo.ipynb

On Dec 24, 2019, at 11:58 AM, Jared Adolf-Bryfogle < [email protected]> wrote:

@jadolfbr requested changes on this pull request.

So - no one really makes a loop foldtree from scratch anymore. I would preface that section with this info. That we are reviewing how to manually create a loop foldtree to help the user understand fold trees, but generally one would use the foldtree_from_loops function that takes a loop object, a pose, and an empty foldtree:

protocols::loops::fold_tree_from_loops(pose, *loops, ft); pose.fold_tree(ft); protocols::loops::add_cutpoint_variants(pose);

The loops need cutpoint variants - in your notebook, you do this manually, which is fairly error prone. If you create the FT first, and then use the variants function, this is done automatically.

The rest of it looks OK - but fairly out of date. There has been much in the way of GenKIC from @vmullig https://github.com/vmullig and Next-Gen kic from the Kortemme lab. I'm not sure how to use them in PyRosetta, but they should at least be mentioned. I believe NGK is a mover, while the general setup of GenKIC is through PyRosetta scripts. There is documentation for these on the doc wiki, and I would add that to the bottom of the page. I would also add the NGK paper reference to the top and if @vmullig https://github.com/vmullig has a reference for GenKIC. Other than that, it looks good. I'll be able to go through it line by line after Christmas.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub < https://github.com/RosettaCommons/PyRosetta.notebooks/pull/28?email_source=notifications&email_token=AAF5OKJKERIKLM27ELJVLQTQ2JEVVA5CNFSM4J63CKFKYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCQFNLXA#pullrequestreview-336254428>, or unsubscribe < https://github.com/notifications/unsubscribe-auth/AAF5OKMZH77AFR4CUMK4W3TQ2JEVVANCNFSM4J63CKFA .

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/RosettaCommons/PyRosetta.notebooks/pull/28?email_source=notifications&email_token=ABACZUHQQUZ7FMZNEK2WZJDQ2MPKLA5CNFSM4J63CKFKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHUEPWI#issuecomment-568870873, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABACZUHFWFDZW6ETEPGOBCLQ2MPKLANCNFSM4J63CKFA .

vmullig avatar Dec 26 '19 04:12 vmullig

@kathyle9 - are you still wanting to add a section for loop modeling?

jadolfbr avatar Mar 04 '20 23:03 jadolfbr

@jadolfbr Hi. I'm sorry-- this fell off my radar recently. Yes, I think we should still have this section. I'll push some changes later today

kathyle9 avatar Mar 09 '20 15:03 kathyle9

@jadolfbr Do you mind taking another look at the most recent version and see if there's anything else I should change? Hopefully the "FoldTree" section is more clear and informative now.

kathyle9 avatar Apr 29 '20 01:04 kathyle9

These are really good points! Thanks for the feedback

kathyle9 avatar May 01 '20 17:05 kathyle9