Hello all - I'm trying to calculate the elbow angle of an Fab locally (i.e. 
without uploading to a server) and decided to try it in PyMOL.  I got stuck, 
and thought maybe someone much wiser than I might be able to shed some light on 
the error(s) of my ways.

I've been trying to use some of the functions in transformations.py by 
Christoph Gohlke (quite a thorough toolset!); what I have so far is the 
following .pml script:

run transformations.py

import numpy
import transformations

fetch 3ghe, async=0

# break the fab into 4 pieces
create vl, chain L and resi 1-107
create vh, chain H and resi 1-113
create cl, chain L and !vl
create ch, chain H and !vh

# align the pieces
super vl,vh
super cl,ch

python

# get the transformation matrices
mat_v = cmd.get_object_matrix("vl")
mat_c = cmd.get_object_matrix("cl")

# turns Pymol's output into a 4x4 python array
def mat_to_R(mat):
    R = [[mat[0],mat[1],mat[2],mat[3]],
         [mat[4],mat[5],mat[6],mat[7]],
         [mat[8],mat[9],mat[10],mat[11]],
         [mat[12],mat[13],mat[14],mat[15]]]
    return R

Rv = mat_to_R(mat_v)
Rc = mat_to_R(mat_c)

# calculate the axis & angle
angle_v,direction_v,point_v = transformations.rotation_from_matrix(Rv)
angle_c,direction_c,point_c = transformations.rotation_from_matrix(Rc)

# calculate the elbow angle
elbow = numpy.degrees(numpy.dot(direction_v,direction_c))
print "Elbow angle:",elbow

python end

I'm getting the following error, but I'm not sure how to address it:

Traceback (most recent call last):
  File "/sw64/lib/pymol-py26/modules/pymol/parser.py", line 155, in parse
    exec(py_block,self.pymol_names,self.pymol_names)
  File "<string>", line 19, in <module>
  File "transformations.py", line 348, in rotation_from_matrix
    raise ValueError("no unit eigenvector corresponding to eigenvalue 1")
ValueError: no unit eigenvector corresponding to eigenvalue 1

Any help would be greatly appreciated!

Thanks,

Jared

--
Jared Sampson
Xiangpeng Kong Lab
NYU Langone Medical Center
New York, NY 10016
212-263-7898


------------------------------------------------------------
This email message, including any attachments, is for the sole use of the 
intended recipient(s) and may contain information that is proprietary, 
confidential, and exempt from disclosure under applicable law. Any unauthorized 
review, use, disclosure, or distribution is prohibited. If you have received 
this email in error please notify the sender by return email and delete the 
original message. Please note, the recipient should check this email and any 
attachments for the presence of viruses. The organization accepts no liability 
for any damage caused by any virus transmitted by this email.
=================================


------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net)
Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net

Reply via email to