[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [IMP-users] Sigmoidal crosslinks in IMP.pmi 2.7.0



Looking at the IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint() source, the only parameters I can see are slope and length, there does not appear to be any sigma parameter to set an inflection point where the exponential portion of the function tops out.

 

The CrossLinkingMassSpectrometryRestraint score gets evaluated using an IMP.isd.CrosslinkMSRestraint(), where the score is calculated at IMP.isd.CrossLinkMSRestraint.cpp at line 149 as -log(get_probability()), where the probability is given a prior of exp(-slope_*dist) at line 100. Taking a log of an exponent seems to indicate that the score is an linear function of the distance, where the crosslink length is only taken into account indirectly via the psi and pofr variables.

 

When I set the slope parameter as any value much above 0.025, IMP cannot start the simulation, as it results in a frame 0 score Inf in the simulation output, due to the unbounded exponential increase in score for far-apart randomly shuffled crosslinks. Using the SigmoidCrossLinkMS to model crosslinks does work as expected, with an intial S-shaped step increase in score followed by a linear increase. I had to modify the SigmoidCrossLinkMS() class code to take a Hierarchy object instead of a Representation, but it seems to behave much more nicely.

 

Fergal Duffy
Postdoctoral Researcher

Center for Infectious Disease Research
307 Westlake Ave N, Suite 500 | Seattle, WA 98109
206.256.7435 |

 

From: [mailto:] On Behalf Of Riccardo Pellarin
Sent: Thursday, June 29, 2017 2:34 AM
To: Help and discussion for users of IMP
Subject: Re: [IMP-users] Sigmoidal crosslinks in IMP.pmi 2.7.0

 

IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint()

is indeed a sigmoidal function modulated by two parameters sigma (inflection) and psi (baselines).

The maximal length of the crosslinker is passed through "length=..." in the constructor.

There is a linear part, but that is just a soft bias to avoid particles getting dispersed, since the potential is flat

at high distance values. The slope of the linear part is 0.01-0.02 Score Unit/ Angstrom, can be changed using "slope=..."


Riccardo Pellarin, PhD

===================

Institut Pasteur

CNRS UMR 3528

25, rue du Docteur Roux
75724 Paris Cedex 15, France

 

On Fri, Jun 9, 2017 at 1:41 AM, Fergal Duffy <" target="_blank">> wrote:

I am using IMP.pmi to model a protein complex using MS crosslinks. I notice that the IMP.pmi crosslinking function, IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint(), scores crosslinks basically as a linear function of crosslink distance. The crosslink length is basically irrelevant here, shorter=better.

 

Ideally, I would like to score crosslinks as a sigmoid function, with crosslinks inside the specified ‘length’ dropping in score. I notice that there is a deprecated SigmoidCrossLinkMS() function in IMP, which uses an IMP.pmi.SigmoidRestraintSphere to model the crosslinks. Is there a reason this is deprecated? Should I be using it? It seems to offer functionality not available elsewhere.

 

Regards,

Fergal

 

 

 

Fergal Duffy
Postdoctoral Researcher

Center for Infectious Disease Research
307 Westlake Ave N, Suite 500 | Seattle, WA 98109
206.256.7435 | " target="_blank">

 


_______________________________________________
IMP-users mailing list
">
https://salilab.org/mailman/listinfo/imp-users