From: Andreas W. <4nd...@gm...> - 2014-06-17 19:18:24
|
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...> 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...> 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 >> 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...] >> Sent: Monday, June 09, 2014 10:04 AM >> To: 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...> 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...> 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 >> <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...) >> 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 >> _______________________________________________ >> PyMOL-users mailing list (PyM...@li...) >> Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users >> Archives: http://www.mail-archive.com/pym...@li... >> > > |