<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi JD,<div><span class="Apple-tab-span" style="white-space:pre">     </span>I misunderstood: I thought you meant that you had an actual Selection object you were working with.  If what you have done is select the atoms you want to work with, then chimera.selection.currentAtoms() is, as you pointed out, a list of those atoms.  Therefore you can just do this:</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">  </span>clashes = detectClash(chimera.selection.currentAtoms())</div><div><br></div><div>--Eric<br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><div style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="5" style="font: 16.0px Helvetica"><span class="Apple-converted-space">                       <span class="Apple-converted-space"> </span></span>Eric Pettersen</font></p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="5" style="font: 16.0px Helvetica"><span class="Apple-converted-space">                       <span class="Apple-converted-space"> </span></span>UCSF Computer Graphics Lab</font></p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="5" style="font: 16.0px Helvetica"><span class="Apple-converted-space">                        </span><a href="http://www.cgl.ucsf.edu">http://www.cgl.ucsf.edu</a></font></p><br class="Apple-interchange-newline"></div></span> </div><br><div><div>On Oct 29, 2008, at 11:40 AM, Dr. Jean-Didier Maréchal wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div lang="ES" link="blue" vlink="purple" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div class="Section1"><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Hi Eric and others,<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">I am having problems with the selection, is it a list or a variable ?… sorry.<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">I selected some atoms and then open the IDLE.<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Then goes the script :<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">>> import chimera<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">>>> from DetectClash import detectClash<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">>>> at=chimera.selection.currentAtoms() – this stocks in at a list of atoms.<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">>>> clashes=detectClash(at.atoms()) – I do what you say<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">And the message error :<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Traceback (most recent call last):<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">  File "<pyshell#3>", line 1, in <module><o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">    clashes=detectClash(at.atoms())<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">AttributeError: 'list' object has no attribute 'atoms'<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">I played around between list and variables but can’t find the right way to move forward. Could you throw me a cable please .<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Best,<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">jd<o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span lang="FR-BE" style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p> </o:p></span></div><div><div style="border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-top-style: solid; border-top-color: rgb(181, 196, 223); border-top-width: 1pt; padding-top: 3pt; padding-right: 0cm; padding-bottom: 0cm; padding-left: 0cm; "><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><b><span style="font-size: 10pt; font-family: Tahoma, sans-serif; ">De:</span></b><span style="font-size: 10pt; font-family: Tahoma, sans-serif; "><span class="Apple-converted-space"> </span>Eric Pettersen [<a href="mailto:pett@cgl.ucsf.edu" style="color: blue; text-decoration: underline; ">mailto:pett@cgl.ucsf.edu</a>]<span class="Apple-converted-space"> </span><br><b>Enviado el:</b><span class="Apple-converted-space"> </span>martes, 28 de octubre de 2008 19:18<br><b>Para:</b><span class="Apple-converted-space"> </span><a href="mailto:JeanDidier.Marechal@uab.es" style="color: blue; text-decoration: underline; ">JeanDidier.Marechal@uab.es</a><br><b>CC:</b><span class="Apple-converted-space"> </span><a href="mailto:chimera-dev@cgl.ucsf.edu" style="color: blue; text-decoration: underline; ">chimera-dev@cgl.ucsf.edu</a><br><b>Asunto:</b><span class="Apple-converted-space"> </span>Re: [chimera-dev] python for finding clashes<o:p></o:p></span></div></div></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi JD,<o:p></o:p></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>You should use DetectClash.detectClash().  The only mandatory argument is a list of atoms.  So if your selection was in a variable named 's', you might call the function like so:<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>from DetectClash import detectClash<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>clashes = detectClash(s.atoms())<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">The return value is a dictionary.  The keys of the dictionary are atoms that have clashes.  The values are dictionaries.  These dictionaries have keys which are the atoms that clash with the original key atom.  The values are the amount of the clash.  So to get the number of clashes, you would use something like this:<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>sum = 0<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>for clashDict in clashes.values():<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">                       <span class="Apple-converted-space"> </span></span>sum += len(clashDict)<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>numClashes = sum / 2<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-tab-span">           <span class="Apple-converted-space"> </span></span>Now, there are a lot of optional keyword arguments to the detectClash() function.  They are pretty well documented in the doc string of the function.  So you should look through the doc string and post any questions that you might still have...<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">--Eric<o:p></o:p></div></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div><div><div><div style="margin-top: 0cm; margin-bottom: 0.0001pt; margin-right: 0cm; margin-left: 0cm; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-converted-space"><span style="font-family: Helvetica, sans-serif; color: black; ">                        </span></span><span style="font-family: Helvetica, sans-serif; color: black; ">Eric Pettersen<o:p></o:p></span></div><div style="margin-top: 0cm; margin-bottom: 0.0001pt; margin-right: 0cm; margin-left: 0cm; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-converted-space"><span style="font-family: Helvetica, sans-serif; color: black; ">                        </span></span><span style="font-family: Helvetica, sans-serif; color: black; ">UCSF Computer Graphics Lab<o:p></o:p></span></div><div style="margin-top: 0cm; margin-bottom: 0.0001pt; margin-right: 0cm; margin-left: 0cm; font-size: 12pt; font-family: 'Times New Roman', serif; "><span class="apple-converted-space"><span style="font-family: Helvetica, sans-serif; color: black; ">                        </span></span><span style="font-family: Helvetica, sans-serif; color: black; "><a href="http://www.cgl.ucsf.edu" style="color: blue; text-decoration: underline; ">http://www.cgl.ucsf.edu</a><o:p></o:p></span></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-family: Helvetica, sans-serif; color: black; "><o:p> </o:p></span></div></div></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div><div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">On Oct 28, 2008, at 7:15 AM, Jean Didier Pie Marechal wrote:<o:p></o:p></div></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><br><br><o:p></o:p></div><div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi everyone,<br><br>I am writing a script for which I need the number of clashes for a given selection for continuing.<span class="Apple-converted-space"> </span><br><br>My first thought was to simply run in my script:<span class="Apple-converted-space"> </span><br>runCommand("findclash selection ignoreIntraRes false")<span class="Apple-converted-space"> </span><br>after having selected the region I was interested in.<br>However, I realize that I come to the recurrent problem: having the information I am interested in printed in the reply log. I don't know how to have the info passed into an array or any kind of variable in the  python environment. Could you tell me how to do so please?<span class="Apple-converted-space"> </span><br><br>On the other side, I would be pleased if you could tell me what is the correct arguments I have to pass and syntax I have to use for the functions  detectClash and/or cmdDetectClash (which I guess is the basis of the same findclash).<span class="Apple-converted-space"> </span><br><br>All the best,<br>JD<br><br>Dr. Jean-Didier Maréchal<br>Lecturer<br>Computational Bioorganic and Bioionorganic Chemistry @ Transmet<br>Unitat de Química Física<br>Departament de Química<br>Universitat Autònoma de Barcelona<br>Edifici C.n.<br>08193 Cerdanyola (Barcelona)<br>Tel: +34.935814936<br>e-mail:<span class="Apple-converted-space"> </span><a href="mailto:JeanDidier.Marechal@uab.es" style="color: blue; text-decoration: underline; ">JeanDidier.Marechal@uab.es</a><br><br><br><br>_______________________________________________<br>Chimera-dev mailing list<br><a href="mailto:Chimera-dev@cgl.ucsf.edu" style="color: blue; text-decoration: underline; ">Chimera-dev@cgl.ucsf.edu</a><br><a href="http://www.cgl.ucsf.edu/mailman/listinfo/chimera-dev" style="color: blue; text-decoration: underline; ">http://www.cgl.ucsf.edu/mailman/listinfo/chimera-dev</a><o:p></o:p></div></div></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p> </o:p></div></div></div></div></span></blockquote></div><br></div></body></html>