Lucas Bleicher wrote: > I want to model a dimer of a two domain (A and B) > protein. The x-ray structures of the homodimers of the > two domains (A1+A2 and B1+B2) are known, and there's a > superposition of residues from the two structures. > However, if I superpose this common interval of > residues two connect the domains A1 and B1, A2 and B2 > will not be connected, which is expectable, as the > domain linker is supposed to be flexible. What I want > to do, so, is a model job which considers the four > domains and their dimerization interfaces as almost > rigid, but let the linker region be flexible in order > to connect them properly. How could I do such a task?
You can do this by adding distance restraints between pairs of atoms in the almost rigid regions, using the model.restraints.make() command, restraint_type='DISTANCE' and distance_rsr_model=7. See http://salilab.org/modeller/8v2/manual/node160.html. This will restrain the interatomic distances of the selected atoms to the template values.
For some examples, see the modlib/modeller/automodel/automodel.py script, particularly the hetatm_restraints and blk_restraints routines.
hetatm_restraints() uses model.restraints.make() to restrain the distances between each atom in a HET residue and every atom with 7 angstroms. blk_restraints() uses this command twice, once to strongly restrain every intra-residue interatomic distance (effectively making a BLK residue a rigid body) and then to restrain the distances between every atom in the BLK residue and every C-alpha atom within 10 angstroms.
In your case you probably want to select just the CA atoms (or some other subset) in your 'almost rigid' regions, otherwise you'll get far too many interatomic distances and an inefficient optimization. Then use a fairly large standard deviation (restraint_stdev) value to allow some flexibility.
Ben Webb, Modeller Caretaker