<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Roeland,<br>
<br>
if you have a triple conformation A, B and C, then their occupancies
should be qA+qB+qC=1. Now if you get a water that is coupled with
altloc C, then qHOH+qC=1.<br>
Currently you cannot do it in phenix.refine, sorry. In fact, you can
make it running, but currently I think it will do something&nbsp; different
from what one would expect. Say you have this artificial molecule in
PDB file, that mimics your case:<br>
<br>
<small><font face="Courier New, Courier, monospace">ATOM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp; O&nbsp;
AHOH H&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8.767&nbsp;&nbsp; 5.853&nbsp;&nbsp; 7.671&nbsp; 0.30 10.00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; O<br>
ATOM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp; O&nbsp; BHOH H&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7.767&nbsp;&nbsp; 7.853&nbsp;&nbsp; 7.671&nbsp; 0.50
12.00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; O<br>
ATOM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp; O&nbsp; CHOH H&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7.767&nbsp;&nbsp; 5.853&nbsp;&nbsp; 5.671&nbsp; 0.20
19.00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; O<br>
ATOM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4&nbsp; K&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; H&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7.000&nbsp;&nbsp; 5.000&nbsp;&nbsp; 7.671&nbsp; 0.80
25.00&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; K</font></small><br>
<br>
then what you want to do is defined by the following selections:<br>
<br>
<small><font face="Courier New, Courier, monospace">refinement {<br>
&nbsp; refine {<br>
&nbsp;&nbsp;&nbsp; occupancies {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; constrained_group {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; selection = resseq 1 and altloc A<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; selection = resseq 1 and altloc B<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; selection = resseq 1 and altloc C<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; constrained_group {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; selection = resseq 1 and altloc C<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; selection = resseq 2<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; }<br>
&nbsp; }<br>
}</font></small><br>
<br>
Unfortunately, for the moment the automatic procedure outsmarts itself
and automatically removes "altloc C" selection from the first group
since it is present in the second group, and therefore the algorithm
"thinks" it is a duplicate unwanted selection. I will fix it once I get
a chance (it is not an easy-fix). <br>
<br>
However, with some manual work you can approximate what you want to do.
Refine that triple conformation as it refines by default in
phenix.refine and keep occupancy of water (the one that is coupled with
C, qHOH) fixed to some value. Then re-set qHOH = 1-qC and repeat
refinement again (do not refine qHOH, keep it fixed). Since by default
phenix.refine will refine partial occupancies, make sure you use
"remove_selection=resname HOH and resseq 1033" to not refine qHOH but
keep it at preset value.<br>
<br>
Please let me know if you have any questions.<br>
<br>
Pavel.<br>
<br>
<br>
On 6/8/09 2:32 AM, Roeland Boer wrote:
<blockquote cite="mid:4A2CDAB8.2060008@ibmb.csic.es" type="cite">
  <pre wrap="">Dear Pavel,

Thanks for the reply. I got it working, you were probably right that it 
was an oversight.

I have a follow-up question concerning triple conformations: if I have 
sidechain confs A, B and C and a water molecule sitting in the position 
of C, can I phenix that it should have the 1-C occupancy (or 1 minus 
A+B)? I've tried this:

constrained_group {
        selection = (chain A and resseq 595 and altloc A) or (resname 
HOH and resseq 1033)
        selection = (chain A and resseq 595 and altloc B) or (resname 
HOH and resseq 1033)
        selection = (chain A and resseq 595 and altloc C)
}

but it gave me an error (obviously)

Thanks,
Roeland.
  </pre>
</blockquote>
</body>
</html>