On Fri, Aug 26, 2011 at 8:49 AM, Bryan Lepore <bryanlepore@gmail.com> wrote:
[ dev-837 ]

I am trying to understand a symmetry operation from coot as it bears
on phenix bond in the geometry restraints. in essence:

in coot, origin-pre-shift is (-1 0 0) and the symmetry-related atom I want is

Y,X,-Z + (0 1 1)

however, the correct operation in phenix is

Y,X,-Z+1

... I suspect I simply do not understand the transformation. if i
could at least confirm this math is correct, i'd appreciate it.

Yes, correct:

  from cctbx import sgtbx
  p = sgtbx.rt_mx("x-1,y,z")
  s = sgtbx.rt_mx("Y,X+1,-Z+1")
  print s.multiply(p)

You have two rotation-translation matrices, which you have to multiply in the correct order: first you shift the structure

  p * x

 then you apply the symmetry operation

  s * p * x

Ralf