Netiquette · Download · News · Gallery · Homepage · DSSR Manual · G-quadruplexes · DSSR-Jmol · DSSR-PyMOL · DSSR Licensing · Video Overview· RNA Covers

Author Topic: Middle reference frame computation  (Read 20082 times)

Offline wallen

  • with-posts
  • *
  • Posts: 1
    • View Profile
Middle reference frame computation
« on: May 08, 2007, 09:21:49 pm »
Hi
I am trying to figure out how to compute the “middle frame” (bp reference frame) from the reference frames of the two bases as shown in Section 5.4 in the User’s manual (p. 26). The average that I computed for the examples (AG1-BC8 and AG2-BC7) doesn’t match the values listed, does anyone know how to explicitly calculate this.
Also is there a way to display this reference frame in the output diagrams?
Thanks for the help.
Whitney

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
(No subject)
« Reply #1 on: May 08, 2007, 10:06:40 pm »
Hi Whitney,

I deliberately skipped the details on calculating bp-reference frame when writing that part of the manual for two reasons: (1) it is identical to the procedure used for the step "middle-frame"; (2) it gives serious users like you an opportunity to figure it out (normal users won't bother tech part anyway). In my experience, this is the best way to have a clear understanding of the mathematics under 3DNA -- which is actually quite simple.

For your verification, the bp frame origin is the direct average of the two bases forming the pair. The bp z-axis is actually the averaged and normalized vector of the two base z-axes. This is not the case for bp x- and y-axes.

Code: [Select]
AG1_o = [15.1632 -0.0362 -4.4678]
AG1_z = [-0.4004 0.4012 0.8238]

BC8_o = [14.9124 0.2803 -4.7498]
BC8_z = [-0.3422 0.5326 0.7741]

bp_o = mean([AG1_o; BC8_o])
         % ====> 15.03780    0.12205   -4.60880

zave = mean([AG1_z; BC8_z])
         % =====> -0.37130   0.46690   0.79895
bp_z = zave / norm(zave)
         % =====> -0.37239   0.46826   0.80128

stagger = dot(AG1_o - BC8_o, bp_z)
         % =====> -0.015638


I am using Matlab (octave) syntax for illustration. In 3DNA, the bp z-axis is calculated along with bp x- and y-axes after symmetrically rotating the two base frames along the buckle-propeller hinge axis. Please have a try and hopefully you would post back step-by-step how you proceed to clarify your own understanding and for the benefit of other 3DNA users.

HTH,

Xiang-Jun

 

Funded by X3DNA-DSSR, an NIGMS National Resource for Structural Bioinformatics of Nucleic Acids (R24GM153869)

Created and maintained by Dr. Xiang-Jun Lu, Department of Biological Sciences, Columbia University