[buster-discuss] Refining hydrogen atoms

Clemens Vonrhein vonrhein at globalphasing.com
Thu Mar 18 11:04:42 CET 2021


Dear Wei-Chun,

On Mon, Mar 15, 2021 at 09:22:14AM +0100, Wei-Chun Kao wrote:
> I am refining a few similar structures ranging from 1.0 to 2.5 Å
> resolution. I added hydrogen atoms to the models and after
> refinement, the occupancies of all hydrogen atoms were set to
> zero. It is clear from refine.log that “All hydrogens are given with
> zero occupancy, i.e. invisible to X-Ray term”.

Correct - so they only contribute to the geometry term (at the nuclear
position by default).
 
> I also repeated the 3a4r example in a BUSTER tutorial
> 
> https://www.globalphasing.com/buster/wiki/index.cgi?AutobusterHydrogens
> 
> with exactly the same commands, except that I needed to use the
> -full option of “hydrogenate" which is not stated (or was not
> available then) to keep the occupancies of the existing hydrogen
> atoms in 3a4r.pdb.

Ah yes - thanks for highlighting the need to update those tutorial
pages asap!

> After refinement, the occupancies of hydrogen atoms were set to
> zero, which is perhaps not supposed to be the case in the tutorial?

It was at the time - since we didn't have support for electron-cloud
position of hydrogens (this was added in 2019). If hydrogens are
placed at the nuclear position it doesn't make sense to have them
visible to the X-Ray term (i.e. with occupancy > 0): X-Ray see
hydrogen electrons slightly shifted along the covalent bond towards
the parent atom (see [1] and [2]).

However, with an electron-cloud model the situation changes: the
hydrogens are in a position adequate for X-Ray data and can be used at
full occupancy (i.e. same occupancy as parent atom). You can decide on
which model to use e.g. via

  aB_hydrogenate -p your.pdb               -o your_nucl.pdb
  refine -p your_nucl.pdb ...

  aB_hydrogenate -p your.pdb -full -ecloud -o your_ecld.pdb
  refine -p your_ecld.pdb -M Ecloud ...

> I got “best refinement in BUSTER reached for FP,SIGFP with R/Rfree
> 0.2178/0.2291, which are higher than the results shown in the
> tutorial 0.1982/0.2120. I guess it’s (partly) the effect of
> excluding hydrogen atoms for refinement?

Most likely that effect is due to the change of default R-value we
report since the December 2020 version (R-values now based on F(calc)
instead of F(expect) as before - see [3]). We definitely need to
update that tutorial!

> I have two sets of questions:
> 
> 1. Is there a way to keep the occupancies of hydrogen atoms to 1.0
>    for my 1.0-Å resolution dataset?

Absolutely, by using the "-M Ecloud" macro in "refine" (see "refine -M
show" to see the various parameter this macro sets). If you have a PDB
file with hydrogens at full occupancy already you are ready to go. If
you have no hydrogens in your model PDB file yet, use "aB_hydrogenate"
with the "-full" and "-ecloud" switch. Please note that
"aB_hydrogenate" calls the original "hydrogenate" tool (which in turn
calls Reduce from Molprobity suite as distributed by CCP4), but adds a
few fix-up functions as well as handling non-standard residues more
automatically.

>    Interestingly the occupancies of all hydrogen atoms in 3a4r.pdb
>    are all 0.88.

Have we mentioned the need for updating that tutorial page? :-)

You could run

  sed "s/  0\.88\(.* H[ ]*\)$/  1.00\1/g" 3a4r.pdb > 3a4r_occ1.pdb

to change all occ=0.88 hydrogens to occ=1.

>    Is it even sensible to refine the occupancies of hydrogen atoms?

No - but their occupancies needs to stay in sycn with the parent atom
(if this is in alternate conformations and/or has its occupancy
refined).

> 2. For the 2.0-ish Ā resolution datasets, perhaps it is a better
> idea to set the occupancies of hydrogen atoms to zero?

It depends a bit on the data quality (one 2A project is not always the
same as another 2A structure). You could definitely try with full
("-ecloud -full" in aB_hydrogenate and "-M ecloud" in refine)
occupancy or with occ=0. When getting closer to ~1.5A the benefits of
using the e-cloud/full model usually become more pronounced.

> Is this the way BUSTER treats hydrogen atoms as riding model?

Buster doesn't really use a so-called "riding model" (as in: hydrogens
contribute to geometry/x-ray function values but their positions are
not refined themselves but calculated based on the parent atom). All
hydrogens will be refined like any other atom: either through geoemtry
terms alone (nuclear position and occ=0) or against geometry and X-Ray
together (e-cloud and full occupancy).

One thing to remember after a BUSTER refinement including hydrogens:
during model validation you might need to tell programs to keep the
hydrogens as they are and to use the correct (ideal) hydrogen
position. E.g.

  molprobity.molprobity keep_hydrogens=True nuclear=False refine.pdb

if you used the full occupancy, e-cloud model.

> Will the
> zero-occupancy hydrogens still improve the geometry of the model at
> this resolution?

Yes: they are fully visible to the geometry term and therefore also to
the contact term - resulting in better placement of e.g. side-chain
rotamers etc.

> The BUSTER version is snapshot_20210224, the operating system is CentOS 7.

Good.

If there are further questions regarding BUSTER and hydrogens, please
let us know!

Cheers

Clemens

[1] https://onlinelibrary.wiley.com/doi/pdf/10.1002/pro.3330
[2] https://journals.iucr.org/d/issues/2018/08/00/mn5114/mn5114fig8.html
[3] https://www.globalphasing.com/buster/wiki/index.cgi?BusterRvalues

-- 

*--------------------------------------------------------------
* Clemens Vonrhein, Ph.D.     vonrhein AT GlobalPhasing DOT com
* Global Phasing Ltd., Sheraton House, Castle Park 
* Cambridge CB3 0AX, UK                   www.globalphasing.com
*--------------------------------------------------------------


More information about the buster-discuss mailing list