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

[modeller_usage] loop optimization in the presence of a ligand



Hi,

I am trying to optimize a loop in close proximity to a ligand. For some reason, the intial models have the ligand present, while the loop optimized models do not. Hence, there are major clashes between some of the calculated loops and the ligand. Is it possible to optimize loops in the presence of the ligand?

My input script:

# Homology modeling by the automodel class
from modeller import *              # Load standard Modeller classes
from modeller.automodel import *    # Load the automodel class

log.verbose()    # request verbose output
env = environ() # create a new MODELLER environment to build this model in

# directories for input atom files
env.io.atom_files_directory = 'MODELLER'

class mymodel(loopmodel):
    def special_restraints(self, aln):
        rsr = self.restraints
        rsr.add(atom_ids=('CA:189', 'CA:372'),
                restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 10.0, 0.1))
        rsr.add(atom_ids=('CA:189', 'CA:393'),
                restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 10.0, 0.1))
        rsr.add(atom_ids=('CA:372', 'CA:393'),
                restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 10.0, 0.1))

   def special_patches(self, aln):
        self.patch(residue_type='DISU', residues=(self.residues['176'],
self.residues ['185']))
    def select_loop_atoms(self):
        return selection(self.residue_range('378:', '383:'))

a = mymodel(env,
alnfile = 'MODELLER/alignment.pir', # alignment filename knowns = 'template', # codes of the templates
              sequence = 'target')               # code of the target

a.starting_model= 1                 # index of the first model
a.ending_model  = 1                # index of the last model

a.loop.starting_model = 1           # First loop model
a.loop.ending_model   = 2           # Last loop model

a.make()                            # do the actual homology modeling

Thanks,

Thijs Beuming