My first issue is about bad contacts. When i produce models and evaluate them with procheck I always get some bad contacts. I have checked the procheck output files and noticed that all bad contacts always have a distance of 2.5 or 2.6 angstroms. Is there any way to change the minimum distance between atoms (i.e. increasing the different atom radii), since it seems like modeller and procheck have different opinions about what a bad contact is?
My second issue is about dimeric symmetry. I produced a model of a dimer using the automodel class and got some nice models. Then i wanted to produce the dimers with symmetry restraints and got many angles in disallowed regions, many bad contacts and very low G-factors. This seems very strange since the only difference between my two runs was that i requested symmetry in my second run. Why do my symmetrical dimers become so bad? These are my two different scripts:
from modeller import * from modeller.automodel import * env = environ() a = automodel(env, alnfile='model-template.ali', knowns='template', sequence='model', assess_methods=(assess.DOPE, assess.GA341)) a.starting_model = 1 a.ending_model = 100 a.library_schedule = autosched.slow a.max_var_iterations = 300 a.md_level = refine.slow a.make() ------------------------------------------------- from modeller import * from modeller.automodel import * log.verbose() class MyModel(automodel): def special_restraints(self, aln): s1 = selection(self.chains['A']) s2 = selection(self.chains['B']) self.restraints.symmetry.append(symmetry(s1, s2, 1.0)) def user_after_single_model(self): self.restraints.symmetry.report(1.0) env = environ() a = MyModel(env, alnfile='chron1-2OBT.ali', knowns='2OBT', sequence='chron1', assess_methods=(assess.DOPE, assess.GA341)) a.starting_model = 1 a.ending_model = 100 a.library_schedule = autosched.slow a.max_var_iterations = 300 a.md_level = refine.slow a.make()
Thank you /Niklas
nornik wrote: > My first issue is about bad contacts. When i produce models and > evaluate them with procheck I always get some bad contacts. I have > checked the procheck output files and noticed that all bad contacts > always have a distance of 2.5 or 2.6 angstroms. Is there any way to > change the minimum distance between atoms (i.e. increasing the > different atom radii), since it seems like modeller and procheck have > different opinions about what a bad contact is?
Bad contacts are usually a consequence of a poor input alignment, causing conflicts between different classes of restraints. You can certainly modify the atomic radii (modlib/radii.lib file) but this will probably not fix your underlying problem.
> My second issue is about dimeric symmetry. I produced a model of a > dimer using the automodel class and got some nice models. Then i wanted > to produce the dimers with symmetry restraints and got many angles in > disallowed regions, many bad contacts and very low G-factors. This seems > very strange since the only difference between my two runs was that i > requested symmetry in my second run. Why do my symmetrical dimers become > so bad?
Was the first (unconstrained) dimer model roughly symmetric? If it wasn't, then trying to force it to be symmetric by imposing a symmetry restraint probably won't help - there are probably some conflicting restraints (particularly if your template is a non-symmetric dimer, since the distance restraints from the template will conflict with your symmetry). You may need to remove some of these restraints, either manually or by modifying your alignment.
... > s1 = selection(self.chains['A']) > s2 = selection(self.chains['B'])
I doubt this is the cause of your problem, but symmetry restraints will only work if these two chains are in fact the same sequence, since they work by constraining all internal distances between the two selections.
You can also speed things up a lot by only constraining the backbone or C-alpha atoms to be symmetric, since that will dramatically cut down on the number of internal distances, e.g. with
s1 = selection(self.chains['A']).only_atom_types('CA') s2 = selection(self.chains['B']).only_atom_types('CA')
Ben Webb, Modeller Caretaker
participants (2)
-
Modeller Caretaker
-
nornik