I was trying to use pymol within Ipython notebook, but I can get all the
functionality of PyMOL and/or Ipython, let me explain.
I tried the following two options:
A) Like a normal script
1) I lauch PyMOL (inside the ipython notebook)
import pymol
from pymol import cmd, stored
pymol.finish_launching()
2) I do stuff like
cmd.load('mol.pdb')
3) I import custom python/pymol code without any problem
The problem with this approach is that the output of commands like
"cmd.get_area" are rendered inside the notebook, but the output of commands
like "ls" are rendered inside PyMOL terminal.
B) Like a remote connection
1) I lunch pymol using "pymol -R"
2) I Lunch the XML-RPC server (inside the notebook) by doing
from xmlrpclib import ServerProxy
cmd = ServerProxy(uri="http://localhost:9123/RPC2")
3) I do stuff like
cmd.load('mol.pdb')
4) I try to import custom python/pymol code e.g somethin like
from pymol import cmd, stored
def get_phi(res_num):
if res_num != 0:
cmd.select('A', 'resi %s and name C' % (res_num-1))
cmd.select('B', 'resi %s and name N' % res_num)
cmd.select('C', 'resi %s and name CA' % res_num)
cmd.select('D', 'resi %s and name C' % res_num)
return cmd.get_dihedral('A', 'B', 'C', 'D')
else:
return float('nan')
and I get the error "'module' object has no attribute 'glutThread'",
normally this will be fixed by adding the line 'pymol.finish_launching()',
but If I do that Ipython get locked (waiting to launch a new PyMOL session).
------------------------------------------------------------------------------
Slashdot TV.
Video for Nerds. Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
PyMOL-users mailing list ([email protected])
Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
Archives: http://www.mail-archive.com/[email protected]