You are here

Cannot get PyMOL_Observer to work on MacOS

2 posts / 0 new
Last post
Cannot get PyMOL_Observer to work on MacOS

The PyMOL_Mover is working but PyMOL_Observer() complains. Hope you can help:

MacOS 10.7.3, 64 bit system

Python 2.7.1 (r271:86832, Jul 31 2011, 19:30:53)
Type "copyright", "credits" or "license" for more information.

IPython 0.12 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.

In [1]: from rosetta import *
In [2]: init()
Found rosetta_database at /Users/cno/software/PyRosetta.MacOSX.Lion-r47452.64Bit/rosetta_database, using it...
PyRosetta 2.011 [r47452] retrieved from:
(C) Copyright Rosetta Commons Member Institutions.
Created in JHU by Sergey Lyskov and PyRosetta Team.

core.init: Mini-Rosetta version 47452 from
core.init: command: app -database /Users/cno/software/PyRosetta.MacOSX.Lion-r47452.64Bit/rosetta_database -ex1 -ex2aro
core.init: 'RNG device' seed mode, using '/dev/urandom', seed=1996275085 seed_offset=0 real_seed=1996275085
core.init.random: RandomGenerator:init: Normal mode, seed=1996275085 RG_type=mt19937

In [3]: pyobs = PyMOL_Observer()
TypeError Traceback (most recent call last)
/Users/cno/software/PyRosetta.MacOSX.Lion-r47452.64Bit/ in ()
----> 1 pyobs = PyMOL_Observer()

/Users/cno/software/PyRosetta.MacOSX.Lion-r47452.64Bit/rosetta/__init__.pyc in __init__(self, keep_history)
994 def __init__(self, keep_history=False):
995 rosetta.core.pose.PosePyObserver.__init__(self)
--> 996 self.pymol = rosetta.PyMOL_Mover(keep_history=keep_history)

TypeError: __init__() got an unexpected keyword argument 'keep_history'


Post Situation: 
Thu, 2012-02-16 09:15

Thank you for reporting this! I fixed this error, so next build will have working version. Here the work-around that could be used now: Instead of creating Observer object directly use this function:
rosetta.protocols.moves.AddPyMolObserver(core::pose::Pose &p, bool keep_history=false, core::Real update_interval=0), alternatively you can edit line 996 in and change it to:

self.pymol = rosetta.PyMOL_Mover()

Fri, 2012-02-17 09:21