Re: [modeller_usage] loop refinement with disulfide patch
To: "M. Seigneuret" <>
Subject: Re: [modeller_usage] loop refinement with disulfide patch
From: Modeller Caretaker <>
Date: Thu, 28 Feb 2008 12:30:06 -0500
Cc:
M. Seigneuret wrote:
A previous case of using restraints or patches in loop refinement
already appeared in the discussion list but there, loopmodel was used
on the fly after automodel so that the redefined patches and restraints
automodel subclasses were active during loop refinement.
What happens when one uses only loopmodel or dope_loopmodel to refine an
existing model ? I suppose it is possible to import patches subclasses
from automodel. I tried to fiddle but got nowhere. Could somebody help me ?
It works in just the same way. loopmodel is a derived class of
automodel, so everything you can do in automodel can also be done in
loopmodel (it doesn't make any difference whether you build models and
refine the loops in one go, or just use loopmodel to refine the loops of
an existing model). See the example at
It should be straightforward to modify this example to also override the
special_patches routine. In your case, your TOP script would translate
to something like:
from modeller import *
from modeller.automodel import *
env = environ()
class MyLoop(loopmodel):
def select_loop_atoms(self):
return selection(self.residue_range('59:', '61:'))
def special_patches(self):
self.patch(residue_type='DISU',
residues=(self.residues['41'],
self.residues['60']))
m = MyLoop(env,
inimodel='mod2f.B99990002.pdb',
sequence='mod2134')
m.loop.starting_model = 20
m.loop.ending_model = 30
m.loop.md_level = refine.very_fast
m.make()
Ben Webb, Modeller Caretaker
--
http://www.salilab.org/modeller/
Modeller mail list: http://salilab.org/mailman/listinfo/modeller_usage