Multimeric Protein Modelling
Hello Modellers,
I'm running into issues when modelling a multimeric (2 chains) protein. When using the multi-chain modelling example seen in the online manual (see below) it throws an error because the monomers aren't the same length, per the special_restraints(). How can I resolve this issue?
Regards, Ryan
# Comparative modeling by the automodel class## Demonstrates how to build multi-chain models, and symmetry restraints#from modeller import *from modeller.automodel import * # Load the automodel class log.verbose() # Override the 'special_restraints' and 'user_after_single_model' methods:class MyModel(automodel): def special_restraints(self, aln): # Constrain the A and B chains to be identical (but only restrain # the C-alpha atoms, to reduce the number of interatomic distances # that need to be calculated): s1 = selection(self.chains['A']).only_atom_types('CA') s2 = selection(self.chains['B']).only_atom_types('CA') self.restraints.symmetry.append(symmetry(s1, s2, 1.0)) def user_after_single_model(self): # Report on symmetry violations greater than 1A after building # each model: self.restraints.symmetry.report(1.0) env = environ()# directories for input atom filesenv.io.atom_files_directory = ['.', '../atom_files'] # Be sure to use 'MyModel' rather than 'automodel' here!a = MyModel(env, alnfile = 'twochain.ali' , # alignment filename knowns = '2abx', # codes of the templates sequence = '1hc9') # code of the target a.starting_model= 1 # index of the first modela.ending_model = 1 # index of the last model # (determines how many models to calculate)a.make() # do comparative modeling
On 9/15/17 2:59 PM, Ryan Ehrlich wrote: > I'm running into issues when modelling a multimeric (2 chains) protein. > When using the multi-chain modelling example seen in the online manual > (see below) it throws an error because the monomers aren't the same > length, per the special_restraints(). How can I resolve this issue?
If you're not modeling a homodimer, it doesn't make sense to enforce symmetry, so you can just use the regular automodel class - no need to subclass and set up symmetry restraints.
Ben Webb, Modeller Caretaker
participants (2)
-
Modeller Caretaker
-
Ryan Ehrlich