[buster-discuss] BUSTER refinement - constrained occupancy groups?
Clemens Vonrhein
vonrhein at globalphasing.com
Thu Apr 21 14:10:55 CEST 2016
Dear Jose,
On Wed, Apr 20, 2016 at 05:01:37PM +0100, Jose Artur Brito wrote:
> Dear All,
> is it possible to create "constrained occupancy groups" similarly to
> what phenix.refine has?
I don't know what phenix.refine has - but BUSTER has this for some
time now. See e.g.
Moniot, S., Bruno, S., Vonrhein, C., Didierjean, C., Boschi-Muller,
S., Vas, M., ... & Corbier, C. (2008). Trapping of the
Thioacylglyceraldehyde-3-phosphate Dehydrogenase Intermediate from
Bacillus stearothermophilus DIRECT EVIDENCE FOR A FLIP-FLOP
MECHANISM. Journal of Biological Chemistry, 283(31), 21693-21702.
where we used an occupancy refinement scheme that sounds similar to
what you are trying to achieve.
> I have a heme c with alternate conformation, a cysteine, also with
> alternate conformation, and an active site ligand. I want to
> constrain the occupancy of (heme + ligand + cysteine - alternate
> conformations A), to one group and the occupancy of (heme + cysteine
> - alternate conformations B), to another.
Unless I understand your situation completely wrong, the easiest
approach seems to be: ensure your PDB file contains
heme.A ligand.A cysteine.A = all at same occupancy (e.g. 0.9)
heme.B ligand.B cysteine.B = all at same occupancy (e.g. 0.1)
This can be done in Coot or via old-fashioned editing. Then run
pdb2occ -p your.pdb -o your.occ
and edit the resulting your.occ file according to:
(1) all *.A atoms should be added to the same group
(2) all *.B atoms should be added to the same (different) group
(3) you can restrain the sum of occupancies to be 1 (optional)
This should then look roughly like that (assuming heme=A1001,
ligand=A1002 and cysteine = A123):
NOTE BUSTER_RESET_CONSTANT_COMBINE
NOTE BUSTER_SET AltOccAll = Empty
NOTE ----- first group:
NOTE BUSTER_SET AltOcc1 = { A|1001:*.A}
NOTE BUSTER_SET AltOcc1 = { A|2001:*.A} + AltOcc1
NOTE BUSTER_SET AltOcc1 = { A|123:*.A} + AltOcc1
NOTE BUSTER_SET AltOccAll = AltOccAll + AltOcc1
NOTE BUSTER_COMBINE OCC AltOcc1
NOTE ----- second group:
NOTE BUSTER_SET AltOcc2 = { A|1001:*.B}
NOTE BUSTER_SET AltOcc2 = { A|2001:*.B} + AltOcc2
NOTE BUSTER_SET AltOcc2 = { A|123:*.B} + AltOcc2
NOTE BUSTER_SET AltOccAll = AltOccAll + AltOcc2
NOTE BUSTER_COMBINE OCC AltOcc2
NOTE ----- restraint sum(occ) to one:
NOTE BUSTER_OCCSUM 1.0 0.005 A|123:CA.A A|123:CA.B
NOTE BUSTER_SET FixOcc = All
NOTE BUSTER_SET FixOcc = FixOcc \ AltOccAll
NOTE BUSTER_CONSTANT OCC FixOcc
See also
https://www.globalphasing.com/buster/wiki/index.cgi?AutoBusterExampleOccupancyRef
https://www.globalphasing.com/buster/wiki/index.cgi?AutoBusterLigandAndOccRef
https://www.globalphasing.com/buster/manual/gelly/manual/gelly3.html
for some examples and the full details.
If you know of a recent example in the PDB that shows a similar
pattern, please let us know (we might work that into an online
tutorial).
Cheers
Clemens
--
***************************************************************
* Clemens Vonrhein, Ph.D. vonrhein AT GlobalPhasing DOT com
*
* Global Phasing Ltd.
* Sheraton House, Castle Park
* Cambridge CB3 0AX, UK
*--------------------------------------------------------------
* BUSTER Development Group (http://www.globalphasing.com)
***************************************************************
More information about the buster-discuss
mailing list