# Homology modeling by the automodel class # # Demonstrates how to refine only a part of the model. # # You may want to use the more exhaustive "loop" modeling routines instead. # from modeller import * from modeller.automodel import * # Load the automodel class log.verbose() # Override the 'select_atoms' routine in the 'automodel' class: # (To build an all-hydrogen model, derive from allhmodel rather than automodel # here.) class MyModel(automodel): def select_atoms(self): # Select residues from chain A (required for multi-chain models): return selection(self.residue_range('1:A', '17:A')) # Select residues from chain A (required for multi-chain models): return selection(self.residue_range('481:A', '534:A')) # Select residues from chain B (required for multi-chain models): return selection(self.residue_range('560:B', '634:B')) # Select residues from chain B (required for multi-chain models): return selection(self.residue_range('716:B', '754:B')) # Select residues from chain C (required for multi-chain models): return selection(self.residue_range('830:C', '852:C')) env = environ() # directories for input atom files env.io.atom_files_directory = ['.', '../atom_files'] # selected atoms do not feel the neighborhood env.edat.nonbonded_sel_atoms = 2 # Be sure to use 'MyModel' rather than 'automodel' here! a = MyModel(env, alnfile = 'AMPK_final-mult.ali', # alignment filename knowns = ('2Y94', '1Z0M_B', '4F2L', 'AMPK_alpha', 'AMPK_beta', 'AMPK_gamma'), # codes of the templates sequence = 'AMPK_final',assess_methods=(assess.DOPE, assess.GA341)) # code of the target a.starting_model= 1 # index of the first model a.ending_model = 5 # index of the last model # (determines how many models to calculate) a.make() # do homology modeling