Support for display and calculation of Hydrogen bonds in proteins and nucleic acids
Note: this feature only applies to pdb format files of macromolecules (proteins and nucleic acids) -- or equivalent formats than supply all the needed atom and residue identification, like possibly mmcif.
Display and rendering of hydrogen bonds
This is rather simple and dates back to Rasmol compatibility.
Important note: not all hydrogen bonds are identified, only these:
- Canonical hydrogen bonds holding the backbone in alpha helices, i.e. intrachain bonds between carbonyl oxygen and alpha nitrogen.
- Canonical hydrogen bonds holding the backbone in beta sheets, i.e. interchain bonds between carbonyl oxygen and alpha nitrogen.
- Canonical hydrogen bonds in Watson-Crick base pairs.
Particularly, no bonds between amino acid side chains.
(check this!) It doesn't matter whether the pdb file contains hydrogen atoms or not. The hydrogen bonds are found and drawn from O to N (in fact, you may find that the H atom lies slightly out of that line).
Calculation of hydrogen bonds
Jmol 11.8 and below
In Jmol up to 11.8 there were just two ways to calculate hydrogen bonds: the RasMol way and a Jmol way. In both these cases these weren't really hydrogen bonds, they were what we can call pseudo-hydrogen bonds that do not involve actual H atoms.
- When the value for
hbondsAngleMinimumis 0, Jmol uses the RasMol calculation and ignores both the angle and distance checking.
hbondsAngleMinimumis set to something else, Jmol uses its own calculation and does the angle and distance checking.
Jmol 12.0 introduces "true" hydrogen-bond calculation, and that changes the picture. The change is that if you have a pdb file with no H atoms and you do nothing special, Jmol will do just what it did before -- Rasmol hydrogen bonds. But if you want Jmol's calculation of pseudo-hydrogen bonds, rather than obtusely setting the
hbondsAngleMinimum value to something other than 0 degrees, you simply use
set hbondsRasmol false
hbondsAngleMinimum defaults to 90 and
hbondsDistanceMaximum defaults to 3.25 for pseudo-hydrogen bonds (O···N or N···N) and 2.5 for standard hydrogen bonds (H··O or H··N).
The choice of standard or pseudo simply revolves around whether hydrogen atoms are in the selected atom set or not.