Member Site › Forums › PyRosetta › PyRosetta – Scripts › ddg Script Problem
- This topic has 7 replies, 4 voices, and was last updated 13 years, 3 months ago by
Anonymous.
-
AuthorPosts
-
-
May 12, 2011 at 7:56 am #907
Anonymous
Hi guys. I’m trying to use the ddg script from Sid on an interface, and after changing the DockingProtocol().setup_foldtree to DockingProtocol().set_autofoldtree,
I’m now getting an undefined error for the Interface(dock_jump) step. Is there an equivalent name in 2.0?-J
-
May 12, 2011 at 1:22 pm #5570
Anonymous
Can you point me to the script or post a few lines of context?
-
May 12, 2011 at 9:35 pm #5572
Anonymous
Sure, sorry…
http://www.pyrosetta.org/scripts
Here’s a snippet:
dock_jump = 1
interface_dist = 8.0 #angstroms
DockingProtocol().setup_foldtree(p)scorefxn = create_score_function(‘standard’)
scorefxn(p) #needed for proper Interface calculationinterface = Interface(dock_jump)
interface.distance(8.0)interface.calculate(p)
starting_p.assign(p)ddg_scorefxn = ScoreFunction()
ddg_scorefxn.set_weight(fa_atr, 0.44)
ddg_scorefxn.set_weight(fa_rep, 0.07)
ddg_scorefxn.set_weight(fa_sol, 1.0)
ddg_scorefxn.set_weight(hbond_bb_sc, 0.5)
ddg_scorefxn.set_weight(hbond_sc, 1.0)for i in range(1, p.total_residue()+1):
if (interface.is_interface(i) == True):
p.assign(starting_p)
ddg = interface_ddg(p, i, ‘A’)
f = open(“ala_scan_output.txt”, ‘a’)
mutname = p.pdb_info().chain(i)+str(p.pdb_info().number(i))+p.sequence()[i-1]+”to”+’A’+”.pdb”
f.write( mutname + ” ddG: ” + str(round(ddg, 3)) +’n’)Thanks.
-
May 12, 2011 at 9:37 pm #5573
Anonymous
I don’t know if python namespaces in the same fashion, but I believe the name of the C++ object is core::conformation::Interface. I’ve alerted Sergey to take a look too.
-
May 13, 2011 at 4:56 am #5575
Anonymous
As Steven pointed out you probably just need to add full namespace to specify which Interface class you want to use. There is a few Interface classes in rosetta from your context I am guessing that it most likely protocols::scoring::Interface. So here what you need to add to use it:
import rosetta.protocols.scoring
...
I = rosetta.protocols.scoring.Interface()
-
May 13, 2011 at 4:04 pm #5576
Anonymous
Sergey, thanks for the suggestion. Still having problems. I see the rosetta.protocols.scoring, and the Interface class when I use pydoc; but import rosetta.protocols.scoring isn’t working in ipython. Is there a different way to call it, or a different name?
-
June 3, 2011 at 12:18 am #5701
Anonymous
I’m at a loss of how to switch DockingProtocol().setup_foldtree to DockingProtocol().set_autofoldtree in this script. A simple substitution clearly doesn’t work; stating that it does not match the C++ signature.
Can someone post how to overcome this?
Many thanks,
Brett -
May 15, 2011 at 7:27 pm #5579
Anonymous
The C++ class is core::conformation::Interface, so try rosetta.core.conformation.Interface, or some variant of that.
-
-
AuthorPosts
- You must be logged in to reply to this topic.