[chimerax-users] Implement Crosslinks/pseudobond/distances subselections and/or export

Eric Pettersen pett at cgl.ucsf.edu
Thu Mar 21 17:35:00 PDT 2019


Here’s a Python script that will write out the atoms and distances of currently selected pseudobonds to a file named “pb_info.txt” in your home directory.  Run it simply by opening it.

—Eric

-------------- next part --------------
A non-text attachment was scrubbed...
Name: write_pbs.py
Type: text/x-python-script
Size: 214 bytes
Desc: not available
URL: <http://plato.cgl.ucsf.edu/pipermail/chimerax-users/attachments/20190321/75369bb5/attachment.bin>
-------------- next part --------------


> On Mar 21, 2019, at 1:49 PM, Elaine Meng <meng at cgl.ucsf.edu> wrote:
> 
> P.S. I guess you could use the same process are you are already using now to save only the crosslink subset of interest to a pb file, convert just those to distance measurements, and then use distance save.
> 
> Depending on how many subsets you have, that might be better than making one giant set of distances, writing them all, and then post-processing to extract the subsets of interest.
> 
> Elaine
> 
>> On Mar 21, 2019, at 1:40 PM, Elaine Meng <meng at cgl.ucsf.edu> wrote:
>> 
>> Hi Pascal,
>> I should mention that Tom’s away for a few weeks.   
>> 
>> In the meanwhile, I don’t have any good suggestions.
>> 
>> One not-so-good idea is to initially define all these pseudobonds as distance monitors instead of generic pseudobonds.  I.e. instead of reading in a pb file that lists pairs of atoms, read in a ChimeraX command file (.cxc) with the same number of lines of pairs of atoms but with the word “distance” before each pair.  
>> 
>> <http://rbvi.ucsf.edu/chimerax/docs/user/commands/usageconventions.html#cxc-files>
>> <http://rbvi.ucsf.edu/chimerax/docs/user/commands/distance.html>
>> 
>> Then you could use “distance save” to save all the distances (automatically sorted from shortest to longest) to a text file, and then post-process the text file to get subsets of interest.  
>> 
>> If the pbonds weren’t originally from a pb file but defined in some other way (e.g. by a plugin) you can write them to a pb file using “save” with “format pseudobonds”
>> <http://rbvi.ucsf.edu/chimerax/docs/user/commands/save.html>
>> 
>> I realize it would not be very convenient, however — sorry!
>> Elaine
>> -----
>> Elaine C. Meng, Ph.D.
>> UCSF Chimera(X) team
>> Department of Pharmaceutical Chemistry
>> University of California, San Francisco
>> 
>>> On Mar 21, 2019, at 9:20 AM, Pascal Albanese <pascal.albanese at polito.it> wrote:
>>> 
>>> Thank you, 
>>> the command works perfectly and it's easier to manage subsets of pseudobonds. 
>>> 
>>> I would have a last request to facilitate the analysis of crosslinks: is it possible to add a feature by which we can extract also the distances from the selected pseudobonds? even if added as a tab column in the exported .pb file. This is because with large datasets it is impossible to visualize distances with either the histogram or on the screen. 
>>> 
>>> Thanks a lot, 
>>> Pascal
>>> 
>>> Il giorno ven 15 mar 2019 alle ore 22:24 Tom Goddard <goddard at sonic.net> ha scritto:
>>> Hi Pascal,
>>> 
>>> If you click an edge of the crosslink network graph then it will select just the crosslinks corresponding to that edge, for example the 8 crosslinks between chains C and D in the example image below.  I made that graph using command "crosslink network #2"  and clicking on the CD edge only selects the #2 crosslinks, not a different set of crosslinks such as model #3.  I tested this and it is working in the current ChimeraX.  You will probably need to zoom your graph so you can actually see an edge -- use shift drag on the graph to zoom it, and alt drag (or some similar modifier) to translate the graph so you can see it better.
>>> 
>>> Now the trouble is in your example you wanted crosslinks involving 4 chains #1/r/R and #2/r/R with both upper and lowercase R chains.  When you click on an edge in the graph it selects only those crosslinks between 2 chains, all others are unselected.  So it won't do what you need.  Might be nice to let shift-click on an edge add to the selection, but that could get pretty tedious if you need to show connections between several chains.  So a command is a better choice.  Here are two commands to select the pseudobonds in crosslink model #5
>>> 
>>> 	select #1/r/R #2/r/R & #5 min 6 max 35
>>> 
>>> The "& #5" part means intersect with model #5.  Or maybe slightly clearer using 2 commands
>>> 
>>> 	select #1/r/R #2/r/R min 6 max 35
>>> 	select intersect #5
>>> 
>>> These command approaches did not work in the current ChimeraX because of two separate bugs that I just fixed, so they will work in tomorrow's ChimeraX.
>>> 
>>> 	Tom
>>> 
>>> <Screen Shot 2019-03-15 at 2.14.46 PM.png>
>>>> On Mar 15, 2019, at 3:42 AM, Pascal Albanese wrote:
>>>> 
>>>> Hi Elaine, 
>>>> 
>>>> Sorry for the late response. So I don't know if I maybe have some issue 
>>>> I see the connecting edges in the network window, but I can only select chains (individual chains) and the subset of pbonds are not selected:
>>>> <image.png>
>>>> Probably is my system which is a bit complicated... somehow the pbonds can be related to individual chains or group of them? like: sel #2.1/R #2.1/r #1.1/R #1.1/r (to select the model) pbonds #3 min 6 max 35 (to select the corresponding pbonds, in which previous chains R and r are involved). And then i can save the subselection of pbonds?
>>>> 
>>>> thanks for your help, i can share session if needed, 
>>>> 
>>>> Pascal
>>>> 
>>>> Il giorno ven 8 mar 2019 alle 18:20 Elaine Meng <meng at cgl.ucsf.edu> ha scritto:
>>>> Hi Pascal,
>>>> On the crosslinks network, clicking the edge between two chains selects the corresponding pseudobonds (those between the two chains).  Is that what you mean?
>>>> 
>>>> <http://rbvi.ucsf.edu/chimerax/docs/user/commands/crosslinks.html#network>
>>>> 
>>>> Or if you meant all those between the two chains, plus the ones within each chain, then Tom’s example command selecting pseudobonds of chains A and B should work.
>>>> 
>>>> I hope this helps,
>>>> Elaine
>>>> -----
>>>> Elaine C. Meng, Ph.D.                       
>>>> UCSF Chimera(X) team
>>>> Department of Pharmaceutical Chemistry
>>>> University of California, San Francisco
>>>> 
>>>>> On Mar 8, 2019, at 6:21 AM, Pascal Albanese <pascal.albanese at polito.it> wrote:
>>>>> 
>>>>> Dear Tom, 
>>>>> Thank for the add, it works and is very useful. However, I don't know if I might haven't explained well: I have a complex set of pseudobonds (let's say #2) involving several Chains of #1. In the "crosslinks network" feature I'm able to subselect chains, but not subgroups of pseudobonds involving, for instance, chains A and B (can be either clicking on the network or with the command line). Would be possible to add this? 
>>>>> Thanks!
>>>>> Pascal
>>>>> 
>>>>> Il giorno mer 6 mar 2019 alle 21:33 Tom Goddard <goddard at sonic.net> ha scritto:
>>>>> Hi Pascal,
>>>>> 
>>>>> I added the ability to save pseudobond files (.pb suffix) in ChimeraX, will be in tonight's builds,
>>>>> 
>>>>>     select /A,B min 15 max 24
>>>>>     save somelinks.pb selectedOnly true
>>>>> 
>>>>> This saves crosslinks between chains A and B with lengths between 15 and 24.  The link colors and radii are also saved.
>>>>> 
>>>>>     Tom
>>>>> 
>>>>>> On Mar 6, 2019, at 2:33 AM, Pascal Albanese wrote:
>>>>>> 
>>>>>> Dear ChimearX Users and developers, 
>>>>>> I'm using ChimeraX for visualization and analysis of pseudobonds datasets from Crosslinking-MS and i found new features very useful (min max selection etc). 
>>>>>> I think it would be useful (but i don't know how much effort will be required) to be able to select subsets of distances (e.g. form 15 to 24 Angstroms, or involving chain A and B) and being able to create and export these subsets. for instance i have a Complex of A, B and C and i want to select all pseudo-bonds involving A and B and export them as pb file (to be able to load them as a separate model lateron). Or to sel min 15 max 24, and then export them as pb file (with "save" function). 
>>>>>> 
>>>>>> I think it would be really useful for both crosslinks visualization and analysis (i work with datasets of thousands of crosslinks on big complexes which make difficult to subselect them, i have to do it with pymol, then generate subsets and reformat them as .pb files). 
>>>>>> 
>>>>>> i had a look to previous threads, but i didn't found similar topics. If i'm wrong my apologize.
>>>>>> Thank you!
>>>>>> Pascal
>>>> 
>> 
>> 
>> _______________________________________________
>> ChimeraX-users mailing list
>> ChimeraX-users at cgl.ucsf.edu
>> Manage subscription:
>> http://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
>> 
> 
> 
> _______________________________________________
> ChimeraX-users mailing list
> ChimeraX-users at cgl.ucsf.edu
> Manage subscription:
> http://www.rbvi.ucsf.edu/mailman/listinfo/chimerax-users
> 



More information about the ChimeraX-users mailing list