On 5/29/18 3:09 PM, Maria Sola i Vilarrubias wrote: > I want to generate a single site mutation in a dimer and for this, I > have successfully run mutate_model.py. However, in the new model, I > would like to impose a fixed distance between a nitrogen from the > mutated residue and an oxygen from a second residue that belongs to the > other subunit. In detail: > > I want to mutate residue 38 from molA to Arg, and impose that the NE > from new Arg38 is at a 2.68 Angstroms distance of molB Glu27 OE1. > > To impose this I understand I should write: > > rsr.add(forms.gaussian(group=physical.xy_distance, > > feature=features.distance(at['OE1:27:B'], > at['NE:38:A']), > mean=2.68, stdev=0.1)) > > > But I don't know where to add this in mutate_model.py
You would add it to the end of the make_restraints() function - around line 60 of mutate_model.py at https://salilab.org/modeller/wiki/Mutate%20model
Note however that mutate_model is designed for single point mutations, and doesn't move any residues except for the mutant, so in practice only the sidechain is going to move. This might not be enough to satisfy your additional restraint, in which case you could try regular comparative modeling using your original structure as the template and the mutated sequence as the target.
Ben Webb, Modeller Caretaker