I am refining a segment of my model using the refine part of model script ( http://salilab.org/modeller/manual/node28.html). Everything works fine, but it creates so many atom clashes that when I do an energy minimization on the structure, that the backbone of my protein snaps. Is there another way to reduce these atom clahses? I also did a test in which I turned on bond interactions, by setting env.edat.nonbonded_sel_atoms = 1; but there are still too many atom clashes. Below is a copy of my script:
# Addition of restraints to the default ones
from modeller.automodel import * # Load the automodel class
log.verbose() env = environ()
# directories for input atom files env.io.atom_files_directory = './:../atom_files'
class mymodel(automodel): def special_restraints(self, aln): rsr = self.restraints # Add some restraints from a file: # rsr.append(file='my_rsrs1.rsr') # Restrain the specified CA-CA distance to 10 angstroms (st. dev.=0.1) # Use a harmonic potential and X-Y distance group. rsr.add(atom_ids=('NZ:12', 'NZ:23'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 11.0, 0.01)) rsr.add(atom_ids=('NZ:40', 'NZ:45'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 9.5, 0.01)) rsr.add(atom_ids=('NZ:88', 'NZ:94'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 10.4, 0.01)) rsr.add(atom_ids=('NZ:94', 'NZ:96'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 10.4, 0.01)) rsr.add(atom_ids=('NZ:96', 'NZ:106'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 11.4, 0.01)) rsr.add(atom_ids=('NZ:106', 'NZ:107'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 6.5, 0.01)) rsr.add(atom_ids=('NZ:133', 'NZ:140'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 11.4, 0.01)) rsr.add(atom_ids=('NZ:206', 'NZ:208'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 3.8, 0.01)) rsr.add(atom_ids=('NZ:226', 'NZ:238'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 34.2, 0.01)) rsr.add(atom_ids=('NZ:238', 'NZ:239'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 6.9, 0.01)) rsr.add(atom_ids=('N:1', 'NZ:96'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 11.4, 0.01)) rsr.add(atom_ids=('NZ:23', 'NZ:59'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 7.5, 0.01)) rsr.add(atom_ids=('NZ:94', 'NZ:208'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 4.5, 0.01)) rsr.add(atom_ids=('NZ:96', 'NZ:195'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 10.3, 0.01)) rsr.add(atom_ids=('NZ:96', 'NZ:208'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 7.2, 0.01)) rsr.add(atom_ids=('NZ:96', 'NZ:226'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 11.4, 0.01)) rsr.add(atom_ids=('NZ:118', 'NZ:140'),restraint_parameters=(3, 1, 1, 27, 2, 2, 0, 11.4, 0.01)) rsr.make(aln, restraint_type='ALPHA', residue_ids=('24', '39'), spline_on_site=False) rsr.make(aln, restraint_type='ALPHA', residue_ids=('48', '82'), spline_on_site=False) rsr.make(aln, restraint_type='ALPHA', residue_ids=('100', '129'), spline_on_site=False) rsr.make(aln, restraint_type='ALPHA', residue_ids=('134', '164'), spline_on_site=False)
def select_atoms(self): self.pick_atoms(selection_segment=('87:', '113:'), selection_search='segment', pick_atoms_set=1, res_types='all', atom_types='all', selection_from='all', selection_status='initialize')
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
a = mymodel(env, alnfile = 'TvLDH-mult.ali', knowns = ('1_86','114_243'), sequence = 'TvLDH') # code of the target a.starting_model= 1 # index of the first model a.ending_model = 1 # index of the last model # (determines how many models to calculate) a.make() # do homology modelling
participants (1)
-
Matt wagner