I am trying to fold and dock a 12-subunit protein which adopts a D6 symmetry. I made the symmetric definition file by
running "make_symmdef_file_denovo.py -symm_type dn -nsub 12". Then I run the "minirosetta.linuxgccrelease" application to do the ab initio folding and docking, and it gave me the following error
ERROR: [ERROR] VRT VRT00010 not attached to a subunit
ERROR:: Exit from: src/core/conformation/symmetry/SymmData.cc line: 1099
"-nsub 10" gave the same error. If I changed -nsub to <=8, the application could be run smoothly. Is there a bug in the source code?
There is an issue with the script that generate the symmetry definition file. In the line that describes how the energy should be calculated it says:
"...6*(VRT0001:VRT00010) + 6*(VRT0001:VRT00011) + 6*(VRT0001:VRT00012)"
There are to many zeros in the names for the virtuals (VRT00010 should be VRT0010). Change this manually to:
"6*(VRT0001:VRT0010) + 6*(VRT0001:VRT0011) + 6*(VRT0001:VRT0012)"
Thanks for finding this. I will fix the script for the next release.
I would probably consider running this as a subsystem given how many subunits you have. There are some issues with this but speed will improve.
Thanks for your help. What do you mean by "running this as a subsystem"? Can you give a little more details?
Running as a subsystem means that you don't have to explicitly represent all subunits in the system. In your case you have 12 subunits and that system can be represented in ROSETTA by something like 6 subunits. This is because some subunit interactions are repeated many times in the assembly and some subunits are too far away to interact.
In practical terms you add the flag -subsystem when running the script to generate a symmetry definition like this.
The difficulty is that when not all subunits are present there is now ways that subunits can translate without coming into contact. It should still work but I haven't tested that for anything as big as this.