From: Lapolla, S. M (HSC) <suz...@ou...> - 2014-06-17 20:29:56
|
Ah I see--I will try and let you know how it works. Thanks again! ________________________________ From: Andreas Warnecke [4nd...@gm...] Sent: Tuesday, June 17, 2014 2:18 PM To: Lapolla, Suzanne M (HSC) Cc: Robert Campbell; pym...@li... Subject: Re: [PyMOL] command question RE printing out distances to text file One more addition to the reply: I failed to notice that you are trying to input a range of residues '17-19' Make sure to input single atom selections to get correct distances and not an average: A straightforward way to get that name is to click on the atom while in the 'editing mode' of pymol: pymol will print: "you clicked" followed by a name that can be copy-pasted. e.g. "You clicked /lys///LYS`2/CA -> (pk1)" can be used to copy-paste /lys///LYS`2/CA Another alternative is to use selections to identify one atom: e.g. cmd.distance('chain B and resi 297 and name CB','chain A and resi 17 and name CB') Then your example becomes: from pymol import cmd # open dist.txt for writing f=open('distnew.txt','w') # calculate the distance and store it in dst dst1=cmd.distance('chain B and resi 297 and name CB','chain A and resi 17 and name CB') dst2=cmd.distance('chain B and resi 297 and name CB','chain A and resi 18 and name CB') dst3=cmd.distance('chain B and resi 297 and name CB','chain A and resi 19 and name CB') # and then for writing the output file f.write("%8.3f\n"%dst1) f.write("%8.3f\n"%dst2) f.write("%8.3f\n"%dst3) f.close() Cheers, Andreas On Tue, Jun 17, 2014 at 8:45 PM, Andreas Warnecke <4nd...@gm...<mailto:4nd...@gm...>> wrote: Hej Suzanne, you will need to append the other two distances to the script to get them printed. Following your example that would be something like: # calculate the distance and store it in dst dst1=cmd.distance('tmp','B///297/cb','A///17-19/cb') dst2=cmd.distance('tmp','B///297/cb','A///17-19/cb') # change the selections in this line! dst3=cmd.distance('tmp','B///297/cb','A///17-19/cb') # change the selections in this line! # and then for writing the output file f.write("%8.3f\n"%dst1) f.write("%8.3f\n"%dst2) f.write("%8.3f\n"%dst3) inserting these blocks in your script hopefully will do the trick. Cheers, Andreas On Tue, Jun 17, 2014 at 8:21 PM, Lapolla, Suzanne M (HSC) <suz...@ou...<mailto:suz...@ou...>> wrote: Another follow up question to this. I decided to use the measure distance python script on the pymol wiki to do this, and I was able to do it successfully with a range of residues, but my question is about the output txt file. When I run the script I get the correct distances (all 3 of them) to show on the GUI but the text file that is generated (distnew.txt) only lists one distance--so perhaps the script needs to be modified for this as well for the residues measured? The original script is at the link http://www.pymolwiki.org/index.php/Measure_Distance<https://urldefense.proofpoint.com/v1/url?u=http://www.pymolwiki.org/index.php/Measure_Distance&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=EqubiL9cuYdYV13TK4bGte5vmf3Plq1xmWomVmdYlKU%3D%0A&s=992466ee53608d828281d0abbd95dc2742e6c75173eb93ae511f357e3225548b> and my modified version is below. Suggestions appreciated! Thank you. # This script writes the distance from # atom mol1///25/ha to atom mol1///26/ha # out to the file "dist.txt" # Simply change your selections to see different distances. # import PyMOL's command namespace from pymol import cmd # open dist.txt for writing f=open('distnew.txt','w') # calculate the distance and store it in dst dst=cmd.distance('tmp','B///297/cb','A///17-19/cb') # write the formatted value of the distance (dst) # to the output file f.write("%8.3f\n"%dst) # close the output file. f.close() ________________________________________ From: Robert Campbell [rob...@qu...<mailto:rob...@qu...>] Sent: Monday, June 09, 2014 10:04 AM To: pym...@li...<mailto:pym...@li...> Subject: Re: [PyMOL] command question RE printing out distances to text file Hi Suzanne, You can also get the distance printed in the external GUI or terminal window by using the "cmd.distance" version of the command. So either you can assign the distance to a variable and print it or you can print the result directly. Assuming you have two selections, sele1 and sele2 specifying the atoms of interest you can do: d = cmd.distance(sele1,sele2) print sele1,sele2,d Cheers, Rob On Mon, 2014-06-09 13:13 EDT, Thomas Holder <tho...@sc...<mailto:tho...@sc...>> wrote: > Hi Suzanne, > > you can use the get_distance command. It doesn't generate a distance > object but prints the distance to the external window. > > https://urldefense.proofpoint.com/v1/url?u=http://pymolwiki.org/index.php/Get_Distance&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=fr2bAoLQoVgp9h2t2fgBvfGVVX7oQ1g14g1AODFz%2FRg%3D%0A&s=921f4dfed39cd38f4ae7a70dfb937844d4e3faf1bc967c2f4d1f2944fa2ea31b > > Cheers, > Thomas > > On 06 Jun 2014, at 23:03, Lapolla, Suzanne M (HSC) > <suz...@ou...<mailto:suz...@ou...>> wrote: > > > Fellow Pymol Users: > > I may have asked this question before...but if so have forgotten. I am > > measuring distances between 2 atoms in 2 different objects using the > > distance command, and it is working perfectly, but I wonder if there is > > a command I can use/add so that those distances can be printed in the > > external gui as well as being shown in the viewer. I will be doing lots > > of these at the same time and the screen will get crowded. Thank you in > > advance. > -- Robert L. Campbell, Ph.D. Senior Research Associate/Adjunct Assistant Professor Dept. of Biomedical & Molecular Sciences Botterell Hall Rm 644 Queen's University, Kingston, ON K7L 3N6 Canada Tel: 613-533-6821<tel:613-533-6821> <rob...@qu...<mailto:rob...@qu...>> https://urldefense.proofpoint.com/v1/url?u=http://pldserver1.biochem.queensu.ca/~rlc&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=fr2bAoLQoVgp9h2t2fgBvfGVVX7oQ1g14g1AODFz%2FRg%3D%0A&s=aaad7877cf1640401ae708b7b5f5a2fbe03abec4d2f0ef509e7360c0017ee225 ------------------------------------------------------------------------------ HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration https://urldefense.proofpoint.com/v1/url?u=http://www.hpccsystems.com/&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=fr2bAoLQoVgp9h2t2fgBvfGVVX7oQ1g14g1AODFz%2FRg%3D%0A&s=dabd029c6435c0bbe92d916555213bd7ccbd3d4ac6dcf2de28cf19c428ff0eed _______________________________________________ PyMOL-users mailing list (PyM...@li...<mailto:PyM...@li...>) Info Page: https://urldefense.proofpoint.com/v1/url?u=https://lists.sourceforge.net/lists/listinfo/pymol-users&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=fr2bAoLQoVgp9h2t2fgBvfGVVX7oQ1g14g1AODFz%2FRg%3D%0A&s=6e6df3376d82f34b3bce9c1de38053ec6052ce7313087062131127d0c0c03fb7 Archives: https://urldefense.proofpoint.com/v1/url?u=http://www.mail-archive.com/pymol-users%40lists.sourceforge.net&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=fr2bAoLQoVgp9h2t2fgBvfGVVX7oQ1g14g1AODFz%2FRg%3D%0A&s=f7df11447d13070db8093ed0604c19654bebcf07d28d46919253043bb5dbe80e ------------------------------------------------------------------------------ HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions Find What Matters Most in Your Big Data with HPCC Systems Open Source. Fast. Scalable. Simple. Ideal for Dirty Data. Leverages Graph Analysis for Fast Processing & Easy Data Exploration http://p.sf.net/sfu/hpccsystems<https://urldefense.proofpoint.com/v1/url?u=http://p.sf.net/sfu/hpccsystems&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=EqubiL9cuYdYV13TK4bGte5vmf3Plq1xmWomVmdYlKU%3D%0A&s=3770148f51cde5e3b41bfe8148af6f177de1f87a3ce2ef525048cb4d007e4fd8> _______________________________________________ PyMOL-users mailing list (PyM...@li...<mailto:PyM...@li...>) Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users<https://urldefense.proofpoint.com/v1/url?u=https://lists.sourceforge.net/lists/listinfo/pymol-users&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=EqubiL9cuYdYV13TK4bGte5vmf3Plq1xmWomVmdYlKU%3D%0A&s=ac52b45821e72d6953baf73732061733d9336260a056886f2e1c1b6b2557c443> Archives: http://www.mail-archive.com/pym...@li...<https://urldefense.proofpoint.com/v1/url?u=http://www.mail-archive.com/pymol-users%40lists.sourceforge.net&k=7DHVT22D9IhC0F3WohFMBA%3D%3D%0A&r=1ciN0EuZ9XNq3lPnYtgkI5sKPXgKVaywidBN0C981SQ%3D%0A&m=EqubiL9cuYdYV13TK4bGte5vmf3Plq1xmWomVmdYlKU%3D%0A&s=83126640d031e1969fd709ac3e936d22d9c31f069a6262b405313a2c45603f3c> |