On Mon, Jun 21, 2010 at 11:55 AM, Jianghai Zhu <span dir="ltr">&lt;<a href="mailto:jzhu@idi.harvard.edu">jzhu@idi.harvard.edu</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
I am using secondary restraints in the phenix.refine. I got the following error message.<br>
hydrogen_bonds_from_selections: incomplete non-PRO residues in helix.<br>
  &quot;(chain &#39;A&#39; and resseq 141:143) and (altloc &#39;A&#39; or altloc &#39; &#39;) and name H&quot; =&gt; 0 donors<br>
  &quot;(chain &#39;A&#39; and resseq 141:143) and (altloc &#39;A&#39; or altloc &#39; &#39;) and name O&quot; =&gt; 3 acceptors<br>. . .</blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Traceback (most recent call last):<br>. . . </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">File &quot;/nfs/home/jzhu/phenix/phenix-1.6.2-432/cctbx_project/mmtbx/secondary_structure.py&quot;, line 652, in _donors_and_acceptors<br>

    donor_isel.insert(k, n_atoms)<br>
IndexError: Index out of range.<br></blockquote><div><br></div><div>The code will try to switch intelligently between restraining H-O and N-O distances, depending on whether or not hydrogen atoms are present in the PDB file - but it does so globally, and *any* hydrogen atoms are enough to trigger use of the H-O restraints.  The warning messages are telling you that hydrogens are missing on those residues; this could happen if you added residues in Coot, but didn&#39;t re-run phenix.ready_set to fully hydrogenate them.  The IndexError is just a bug, probably due to some special case present in your model.</div>
<div><br></div><div>If you intended to refine with hydrogens, you should run phenix.ready_set first; if not, I&#39;d recommend deleting whatever hydrogen atoms are present now, and/or add this parameter:</div><div><br></div>
<div>h_bond_restraints.substitute_n_for_h=True</div><div><br></div><div>which will tell it to only restrain N-O distances.  I&#39;d still like to figure out why it crashes, however - could you please send me the PDB file privately?  (I don&#39;t need data for this, just the model.)</div>
<div><br></div><div>thanks,</div><div>Nat</div></div>