Ilustration of using quaterions and "quaternion difference draw"

Bob Hanson, 7/1/2009

Visualization of "local helix" for helices and sheets is extremely easy using Jmol 11.7.46. In the illustrations below, the key command used was

select {*}
quaternion difference draw

This draws the set of helical axes for a selected set of residues and perhaps hints that quaternions (pronounced qua-TERN-i-ons) are involved. A quaternion expresses a frame of reference. A quaternion difference describes the axis and angle necessary to take one frame to another:

dq = {cos(theta/2), sin(theta/2)*n}

Where n is a unit vector and theta is an angle of rotation. dq is qi+1 / qi - the "right difference" in this quaternion algebra. The calculation is extremely simple, and Jmol automatically sets up a frame of reference for selected residues in a chain. The result of doing this operation for a sequence of two residues in a protein structure gives you the helical axis and angle of rotation required to get from one residue to the next. We are visualizing this quaternion difference, then, as this "local helix axis."
 
You can see that the quaternion differences align along the centers of the helix, thus basically defining that axis. The actual placement of a quaternion vector in space in general is not defined. However, there is only a single position in space where vector representing the quaternion difference can be placed such that the projected angle (looking down the axis) from the alpha carbon of one residue to the next matches the quaternion's theta value. That turns out to be the exact position of the local helical axis. For an actual protein secondary structure helix, this is the center of the helix; for a sheet structure, this is right down the core of the sheet strand. Mathematically, Jmol's "straightness" parameter involves a (four-dimensiona, ahem) dot product of two adjacent quaternion differences. Straightness in Jmol is specifically defined as:



where dqi and dqi-1 are quaternions representing the local helical axis of amino acid residues i and i-1, respectively. The dot product is a four-dimensional dot product. If you were to color these models by straightness -- [go ahead and do that -- call up a console and enter color cartoons straightness] -- you would see that within the helices, where the vectors align nicely, the colors are bright red, and that for less regular regions, where the vectors don't align well, are white.

load =1a6g
quaternion difference draw;
color atoms translucent;
cartoons only;
set echo top left;
echo 1a6g;
color group;
color translucent;
write state 1a6ghelix.spt";

      
 
Sheets are helical in nature as well. It's just that they have larger angles -- close to 180 degress -- between residues. The commands given were:

load =1ag6
quaternion difference draw;
color atoms translucent;
cartoons only;
set echo top left;
echo 1ag6;
color group;
color translucent;
write state 1ag6sheet.spt";

      
 
Based on template by A. Herráez as modified by J. Gutow
Page skeleton and JavaScript generated by export to web function using Jmol 11.7.46 2009-06-25 18:30 on Jul 1, 2009.