# 'DockingProtocol' object has no attribute 'setup_foldtree'

4 posts / 0 new
'DockingProtocol' object has no attribute 'setup_foldtree'
#1

Hi around, sorry for disturbing with my problem that I haven't found posted or solved and if it has been solved I didn't find it. I recently downloaded PyRosetta and would like to use it for docking. The easiest, I thought, is to take an example script that comes with PyRosetta - docking.py, taking the test_dock.pdb that also comes with PyRsoetta and run it to get an idea about computational time. But it doesn't work by writing:
=========
docking.py in ()
15 print "setting up docking fold tree"
16 dock_prot = DockingProtocol() #DockingProtocol object contains many useful docking functions
---> 17 dock_prot.setup_foldtree(p)
18 # DockingProtocol().setup_foldtree(p, "E_I")

19 dock_jump = 1

AttributeError: 'DockingProtocol' object has no attribute 'setup_foldtree'
WARNING: Failure executing file:
Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
=========
I tired to execute the script by typing the commands line by line but it doesn't work either. I also tried Linux and MacOs X versions of PyRosetta to assure that the problem is not caused by something that is not installed or distribution related. I'm sure there is some small stupid error that I do but not able at the state of being to find it out:-(.

Karel K

Post Situation:
Wed, 2011-05-04 06:24
karelk

Sorry, the setup_foldtree method was moved. The default method (DockingProtocol().setup_foldtree(pose)) will no longer work although you can use set_autofold_tree to let the protocol take care of it. The method can now be accessed in PyRosetta from rosetta.protocols.docking.setup_foldtree and requires a Vector1 argument containing the movable jumps. For example, using test_dock.pdb:

rosetta.protocols.docking.setup_foldtree( pose , "E_I" , Vector1(1) )

I haven't checked set_autofoldtee but you can try:

DockingProtocol().set_autofold_tree = True

We'll fix the script soon, thanks for finding the bug. You weren't doing anything wrong, its one of the many things that needs to be updated soon.

Thanks,
Evan

Wed, 2011-05-04 11:04
evan

Thanks, I've used the
"dock_prot.set_autofold_tree=True"
and the script goes further, then it complains about
"recover_sidechains = ReturnSidechainMover(starting_p)"
since it is not defined, I made it to
"recover_sidechains = ReturnSidechainMover(p)"
and again the script goes further but as soon as it reaches
"docking_highres = DockingHighRes( scorefxn_high_min, dock_jump )"
it complains again and I was not able to find out what is the option to be set, I understood that he misses one option which I could figure out, so I commented that line and the script continues. Then it reaches
"jd.native_pose = starting_p"
and complains, with changing it to again to
"jd.native_pose = p"
it proceeds and needs 'just' to comment out "print
"high resolution stage docking""
and
"docking_highres.apply(p)"
and finally it writes
"docking complete!".
So if you could help me to resolve the highres docking stuff, I'll be happy user:-)

 docking_highres = DockingHighResLegacy( dock_jump, scorefxn_high_min )