You are here

Transmembrane helix fold-and-dock?

4 posts / 0 new
Last post
Transmembrane helix fold-and-dock?

I'd like to fold-and-dock a trimeric transmembrane domain.  I mostly have the "Fold And Dock" working following the example in demos/public/symmetry_examples/fold-and-dock/.  However this is treating the transmembrane helixes as though they are in solvent (so for example any hydrophilic groups always rotate outwards).  I'd like to do something which is a combination of "Membrane Abinitio" and "Fold and Dock".  Is this possible, and how do I do it?

Can I run membrane_abinitio2.linuxgccrelease app with symmetry options like -symmetry:symmetry_definition etc? 

Or, can I pass membrane options like -abinitio:membrane -in:file:lipofile -membrane:Menv_penalties etc to the minirosetta.linuxgccrelease app where -broker:setup is pointing to "CLAIMER FoldandDockClaimer"? 

I'm confused about how to combine these two protocols, or if it is even possible to combine them at all.  Please let me know the best way to go about this.

Many thanks!

Post Situation: 
Tue, 2020-05-12 02:09

Hi Sarah, 

I have not tried it and would be surprised if your approach would actually work because you are trying to access 3 different frameworks (membrane abinitio, symmetry, topology broker) in Rosetta that are either pretty old protocols or aren't known to play nicely with other frameworks or each other. Unfortunately, simply adding a new option on the command line does not mean that the underlying code actually works together.

I do have a couple of pointers that should get you started though:

  1. I would implement your protocol in RosettaScripts as this is the most flexible playground for custom protocols and many Movers are implemented and well-documented.
  2. Because you are using RosettaScripts, you would have to use the RosettaMP framework instead of RosettaMembrane. The RosettaMP paper ( supplement actually has some RosettaScripts components that would be useful for this, for instance symmetry, possibly refinement (if you want to refine after running Fold-N-Dock), how to use the AddMembraneMover, etc.
  3. I would start with the symmetry protocol in the RosettaMP paper and add components. 
  4. A note on the flags, which isn't immediate obvious: use -mp:setup:spanfiles my.span (RosettaMP) instead of -in:file:spanfile my.span (RosettaMembrane) to access the proper framework. Ditch -in:file:lipofile as this currently isn't supported in RosettaMP. You also might want to use the option -packing:pack_missing_sidechains 0 as RosettaMP sometimes gives you a packing error when it tries to pack the sidechains before the membrane residue is present. 
  5. A note on the scorefunction: you could use the newest scorefunction franklin2019 ( or the previous one: mpframework_smooth_fa_2012 (described in the RosettaMP paper). I think either should work but if you run into problems with one, try the other.


Hope this gets you started, good luck. 


Tue, 2020-05-12 06:51

Hi Julia - Thank you, I didn't know about RosettaScripts, I'll look into that.   Would you recommend RosettaScripts over PyRosetta for this?  PyRosetta has been on my to-learn list :)

I read the RosettaMP paper, and tried to walk through the MPsymdock example from the S5 file in the paper.  Running into a few issues with that - for the relax step,


rosetta_scripts.static.linuxgccrelease -parser:protocol membrane_relax.xml @relax_flags

[ ERROR ]: Caught exception:

File: src/utility/options/
Option matching -membrane_new:setup:spanfiles not found in command line top-level context


For the docking, my Rosetta (2020.11) doesn't have main/source/bin/membrane_symdocking, how would I run that?  (Am I running the wrong version?)

The membrane portion of my protein is just a helix, they probably assemble into a homotrimer bundle but I don't know the preferred orientation.  Is it possible to simply try every possible orientation and get an energy for it? (eg changing tilt angle in 1 degree steps and rotation in 10 degree steps or similar and then bringing the helixes together starting from each of those orientations)



Thu, 2020-05-14 00:45

Hi Sarah, 

The executable and options have changed slightly in the updated versions, they are now called

mp_symdock instead of membrane_symdock


-mp:setup:spanfiles instead of -membrane_new:setup:spanfiles

Yes, you should be able to change the orientations, especially if you choose to run things in PyRosetta. Whether you use RosettaScripts or PyRosetta is up to you - it takes a bit longer to learn PyRosetta, but this gives you more flexibility for writing your custom protocols. 

Hope this helps, 


Tue, 2020-05-19 15:02