Hi folks I hate to say this but I think everyone here has got it wrong to some degree (including myself - and I hereby retract my previous e-mail and issue the correction below!). If you don't believe me then read & digest Jorge Navaza's article "Rotation functions" in Int. Tab. Vol. F (sect 13.2, p. 269), particularly sections 13.2.2 and Appendix A13.2.1.1.
Phil's article in Acta D57 1355-1359 (2001), i.e. the 2001 S/W proceedings, states: "... the convention used in AMoRe (Navaza, 1994) and other CCP4 programs (Collaborative Computational Project, Number 4, 1994) is to rotate by gamma around z, then by beta around the new y, then by alpha around the new z again, R = Rz'(a).Ry'(b).Rz(g)" Compare this with Jorge's equation 13.2.2.3 which he explicitly states applies to rotations about fixed axes, not rotated axes (but using my notation): R = Rz(a).Ry(b).Rz(g) i.e. first by gamma about z, then by beta about the *fixed* y axis, then by alpha about the *fixed* z axis. The same formula cannot apply to both rotations about fixed and rotated axes at the same time! Looking at Jorge's equation 13.2.2.1 it's plain that the correct version involving rotated axes is (again substituting my own notation which should be obvious): R = Rz'(g).Ry'(b).Rz(a) i.e. the correct statement is that the rotation is generated by rotating first by alpha about z, then by beta about the rotated y axis (y'), then by gamma about the rotated z axis (z'). Of course it may well be that Phil's equation is based on an older version of Jorge's analysis perhaps using a different convention in his Acta Cryst. (1994), A50, 157-163 paper, but unfortunately I don't have online access to AC(A) to check it out, maybe someone who has access could do so. In fact it's quite obvious looking at the individual matrices Rz(a) & Ry(b) at the bottom of page 1358 in Phil's paper that they must apply to fixed not rotating axes, because if say the Ry(b) matrix were for rotation about the rotated y axis, it would have to be a function of gamma: applying the Rz(g) matrix as given in the paper first to the y-axis vector (0,1,0) gives the rotated y-axis vector (-sin(g),cos(g),0). Similarly if the Rz(a) matrix represented rotation about the rotated z axis it would have to be a function of both beta & gamma and plainly it's not. This all goes to show that a) even the experts sometimes get it wrong particularly where matrix algebra is concerned, and b) you should avoid the concept of rotating about rotated axes like the plague! -- Ian > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Bernhard Rupp > Sent: 12 August 2007 20:37 > To: CCP4BB@JISCMAIL.AC.UK > Subject: CCP4 rotation convention > > Dear programmers - > > Phil Evans writes in acta D57 1355 (2001) on p 1358 section 5.2: > > "....the convention used in AMoRe (Navaza, 1994) > and other CCP4 programs (Collaborative Computational > Project, Number 4, 1994) is to rotate by gamma around z, then by > beta > around the new y, then by alpha around the new z again, > R = Rz(al)Ry(be)Rz(ga)" > > This seems correct, as the first rotation is applied first to > vector x, then the second to the new one, etc, thus > x' = (Rz(al)(Ry(be)(Rz(ga)x))) > > In J.Appl.Cryst. 30 402-410 (1977) in the convrot description, > Sascha Uzhumtsev lists in table one for (Navaza 1994): > > alpha about Z, beta about Y and gamma about new Z > and gives the *same* resulting rotation > Rz(al)Ry(be)Rz(ga) > > This seems to be a contradiction I cannot resolve? > > Thx, br > ----------------------------------------------------------------- > Bernhard Rupp > 001 (925) 209-7429 > +43 (676) 571-0536 > [EMAIL PROTECTED] > [EMAIL PROTECTED] > http://www.ruppweb.org/ > ----------------------------------------------------------------- > People can be divided in three classes: > The few who make things happen > The many who watch things happen > And the overwhelming majority > who have no idea what is happening. > ----------------------------------------------------------------- > > Disclaimer This communication is confidential and may contain privileged information intended solely for the named addressee(s). It may not be used or disclosed except for the purpose for which it has been sent. If you are not the intended recipient you must not review, use, disclose, copy, distribute or take any action in reliance upon it. If you have received this communication in error, please notify Astex Therapeutics Ltd by emailing [EMAIL PROTECTED] and destroy all copies of the message and any attached documents. Astex Therapeutics Ltd monitors, controls and protects all its messaging traffic in compliance with its corporate email policy. The Company accepts no liability or responsibility for any onward transmission or use of emails and attachments having left the Astex Therapeutics domain. Unless expressly stated, opinions in this message are those of the individual sender and not of Astex Therapeutics Ltd. The recipient should check this email and any attachments for the presence of computer viruses. Astex Therapeutics Ltd accepts no liability for damage caused by any virus transmitted by this email. E-mail is susceptible to data corruption, interception, unauthorized amendment, and tampering, Astex Therapeutics Ltd only send and receive e-mails on the basis that the Company is not liable for any such alteration or any consequences thereof. Astex Therapeutics Ltd., Registered in England at 436 Cambridge Science Park, Cambridge CB4 0QA under number 3751674