using DSS/BS crosslink information as restrain
Dear modeller users and "caretakers",
i was using modeller to model a heterohexameric complex from mouse where the yeast orthologous structure is known. to evaluate the models i used the DOPE score and visualized a dozen available intersubunit DSS/BS crosslinks using Xlink Analyzer in chimera.
for 2 neighbouring subunit 3 crosslinks indicate that the published heterohexameric complex appears to have a different arrangement in that part than the published one (crosslinked residues between subunits are around 60A apart)
in order to obtain a model satisfying those crosslink restrains would one add the 3 crosslinks as below, or can you recommend a better approach:
class MyModel(automodel): def special_restraints(self, aln): rsr = self.restraints at = self.atoms
# Constrain the distance between alpha carbons in residues 611 chain D # and 224 chain B to be less than 30 angstroms: rsr.add(forms.upper_bound(group=physical.xy_distance, feature=features.distance(a['CA:611:D'], a['CA:224:B']), mean=30., stdev=0.1))
thanks a lot!!!!
Maria
Hey all,
I decided to try using upper_bound restraints as above to feed the crosslink information to modeller.
But actually the restraints did not improve the conflicting distances. my assumption is that the few restrains from the crosslinks can not compete with the many restrains coming from the alignment. I guess one would have to modify the model later somehow.
maybe using imp?
greets Maria
On Mon, Sep 7, 2015 at 11:19 AM, thereal sisterdot < therealsisterdot@gmail.com> wrote:
> Dear modeller users and "caretakers", > > i was using modeller to model a heterohexameric complex from mouse where > the yeast orthologous structure is known. > to evaluate the models i used the DOPE score and visualized a dozen > available intersubunit DSS/BS crosslinks using Xlink Analyzer in chimera. > > for 2 neighbouring subunit 3 crosslinks indicate that the published > heterohexameric complex appears to have a different arrangement in that > part than the published one (crosslinked residues between subunits are > around 60A apart) > > in order to obtain a model satisfying those crosslink restrains would one > add the 3 crosslinks as below, or can you recommend a better approach: > > class MyModel(automodel): > def special_restraints(self, aln): > rsr = self.restraints > at = self.atoms > > # Constrain the distance between alpha carbons in residues 611 chain D > # and 224 chain B to be less than 30 angstroms: > rsr.add(forms.upper_bound(group=physical.xy_distance, > feature=features.distance(a['CA:611:D'], a['CA:224:B']), > mean=30., stdev=0.1)) > > thanks a lot!!!! > > Maria > > > >
On 09/07/2015 11:27 PM, thereal sisterdot wrote: > I decided to try usingupper_bound restraints as above to feed the > crosslink information to modeller. > > But actually the restraints did not improve the conflicting distances. > my assumption is that the few restrains from the crosslinks can not > compete with the many restrains coming from the alignment. > I guess one would have to modify the model later somehow.
Modeller will always build a model that resembles the template (in aligned regions) by construction - that's what it's designed to do. So in order to satisfy your crosslinks you would have to remove the corresponding distances from the template. One way to do this would be to break the template into multiple pieces (e.g. one per chain or domain), i.e. changing your alignment from
template AAAAA/BBBBB model mmmmm/mmmmm
to
template1 AAAAA/----- template2 -----/BBBBB model mmmmm/mmmmm
Then you'll get no A-B interactions enforced in your model because those chains are in different templates.
> maybe using imp?
Sure, there are many successful applications of crosslinking using IMP. See http://integrativemodeling.org/systems/?tag=chemical%20crosslinks for recent published examples.
Ben Webb, Modeller Caretaker
participants (2)
-
Modeller Caretaker
-
thereal sisterdot