Is it still possible to add symmetry restraints to automodel in spectial_restraints? I used to be able to do this with pick_atoms, but now that "selection" has taken over I seem to be missing something.
I define a new class as follows:
segsize=???
class sym_model(automodel):
def special_restraints(self, aln):
sel1 = selection(self.residue_range('1',str(segsize))).only_mainchain()
sel2 = selection(self.residue_range(str(segsize+1),str(2*segsize+1))).only_mainchain()
self.restraints.symmetry.append(symmetry(sel1,sel2,1.0))
But get the following output:
File "
model-dimer.py", line 41, in ?
a.make()
File "/usr/local/modeller9v2/modlib/modeller/automodel/automodel.py", line 99, in make
self.homcsr(exit_stage)
File "/usr/local/modeller9v2/modlib/modeller/automodel/automodel.py", line 423, in homcsr
self.mkhomcsr(selection(self), aln)
File "/usr/local/modeller9v2/modlib/modeller/automodel/automodel.py", line 506, in mkhomcsr
self.special_restraints(aln)
File "model-dimer.py", line 26, in special_restraints
sel1 = selection(self.residue_range('1',str(segsize))).only_mainchain()
File "/usr/local/modeller9v2/modlib/modeller/coordinates.py", line 71, in residue_range
start = self.residues[start]._num
File "/usr/local/modeller9v2/modlib/modeller/coordinates.py", line 183, in __getitem__
(self.offset, self.length, self.suffix))
File "/usr/local/modeller9v2/modlib/modeller/util/modutil.py", line 19, in handle_seq_indx
int_indx = lookup_func(*args)
File "/usr/local/modeller9v2/modlib/modeller/coordinates.py", line 56, in _indxres
raise KeyError, ("No such residue: %s" % indx)
Thanks in advance
--
"He has yet to find out that what's in the public interest is not what the public is interested in."
-- The Truth, Terry Pratchett
--
Gordon Wells
Bioinformatics and Computational Biology Unit
Department of Biochemistry
University of Pretoria