I am trying to incorporate some experimentally-derived distance
restraints into a homopentamer model, and had a few questions:
1.) the manual says that restraints.make_distance() should be used for
setting physical distance restraints. However,in the section on
restraints.add() http://salilab.org/modeller/manual/node209.html, an
example is given on setting distance restraints with this instead of
restraints.make_distance(). Is there any benefit to using one versus the
other? Do you use the rsr.add() if you have a lot of restraints to add
(as I do- 15 in all)?
2.) restraints.make_distance() uses an analytic model to calculate
standard deviations, and the manual says to use model 5 for
Calpha-Calpha distances and model 6 for N-O distances. I have not been
able to find a description of these models, or which one to use for
other atom-pair distances. Does it really make much difference?
I did try a quick modeling using restraints.add with the following line
in the script:
rsr.add(forms.gaussian(group=physical.xy_distance,feature=features.distance(at['ND2:93'],at['NH1:905']),mean=19.3,stdev=0.2))
and got the following error message:
**************************************************************************
File "EnforceSymmetryTrim_distance_restraints.py", line 96, in ?
a.make()
File "/usr/lib/modeller9v2/modlib/modeller/automodel/automodel.py", line
99, in make
self.homcsr(exit_stage)
File "/usr/lib/modeller9v2/modlib/modeller/automodel/automodel.py",
line 423, in homcsr
self.mkhomcsr(selection(self), aln)
File "/usr/lib/modeller9v2/modlib/modeller/automodel/automodel.py",
line 506, in mkhomcsr
self.special_restraints(aln)
File "EnforceSymmetryTrim_distance_restraints.py", line 37, in
special_restraints
feature=features.distance(at['ND2:93'], at['NH1:905']),
File "/usr/lib/modeller9v2/modlib/modeller/coordinates.py", line 137,
in __getitem__
(self.offset, self.length, self.suffix))
File "/usr/lib/modeller9v2/modlib/modeller/util/modutil.py", line 19,
in handle_seq_indx
int_indx = lookup_func(*args)
File "/usr/lib/modeller9v2/modlib/modeller/coordinates.py", line 47,
in _indxatm
raise KeyError, ("No such atom: %s" % indx)
KeyError: 'No such atom: ND2:93'
*************************************************************************
which suggests that it can't find the ND2 atom in residue 93 . However,
the atom does exist in the *.ini file (as does atom NH1 in residue 905):
ATOM 783 ND2 ASN A 93 30.499 39.522 -12.905
ATOM 7622 NH1 ARG E 905 45.372 32.420 -16.993
any ideas as to what is going on here?
Thanks
Mike White