[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [modeller_usage] Scattered homology model based on multiple temlpates



On 10/21/13 3:57 AM, Lalith Kumar wrote:
Last week, based on my Query regarding '*Modelling with Side Chain
Restraints*', I have prepared my script (see attachment) and built a
homology model of a heterotrimer. Eventhough, I restrained the movement
of side chains of those copied residues, I failed in keeping my model
intact. I mean, my model has got gaps equal to the number of templates.
I can say that the templates are not superposed (default by MODELLER)
and therefore residues copied from each template have fallen apart with
out getting joined to each other. Hope so I have gave a clear idea about
the situation. Please let me know if anything more to be provided from
my side.

There are two obvious problems with your script. The first is here:

class MyModel(automodel):
    def select_atoms(self):
        return selection(self.residue_range('1:A', '17:A'))
        return selection(self.residue_range('481:A', '534:A'))
        return selection(self.residue_range('560:B', '634:B'))
        return selection(self.residue_range('716:B', '754:B'))
        return selection(self.residue_range('830:C', '852:C'))

Obviously the first 'return' statement will make the function return, so all subsequent selections will be ignored. Assuming the residues above are the only residues you want to move, the following should work:

class MyModel(automodel):
    def select_atoms(self):
        return selection(self.residue_range('1:A', '17:A'),
                         self.residue_range('481:A', '534:A'),
                         self.residue_range('560:B', '634:B'),
                         self.residue_range('716:B', '754:B'),
                         self.residue_range('830:C', '852:C'))

The second is your use of multiple templates. When you have multiple templates, the initial model is the average of all templates. That's probably not what you want in this case. Two options here would be to modify your alignment so in the regions that aren't moving the model is only ever aligned with a single template, or use the inifile argument to automodel to specify your own initial model.

	Ben Webb, Modeller Caretaker
--
             http://www.salilab.org/modeller/
Modeller mail list: http://salilab.org/mailman/listinfo/modeller_usage