lgatto / synapter

Label-free data analysis pipeline for optimal identification and quantitation
https://lgatto.github.io/synapter/
4 stars 2 forks source link

why is fragment information non-redundant? #102

Open pavel-shliaha opened 8 years ago

pavel-shliaha commented 8 years ago

In HDMSE fragments are associated with precursors based on similarity of rt and dt. So there is a question: why if we do 3D grid search which has these dimensions in it, we can still increase identification transfer efficiency by fragment matching?

In theory if two EMRTs have similar m/z, rt and dt, they should also share all the same fragments. Hence when they fall within the tolerances of a peptide, fragment information should not help and filterNonUniqueMatches() should be useless, since the two EMRTs should have the same fragments assigned.

My feeling tells me that the reason for this discrepancy is that fragments need to be lower in intensity than their EMRTs, hence in the situation with these two EMRTs one of them is just lower in intensity than the fragments.

sgibb commented 8 years ago

To be honest I don't understand this question.

In HDMSE fragments are associated with precursors based on similarity of rt and dt. So there is a question: why if we do 3D grid search which has these dimensions in it, we can still increase identification transfer efficiency by fragment matching?

By the 3D grid search we look for precursors that are similar in rt, mz and dt. The fragment matching is more or less a quality control step. Using filterUniqueMatches we ensure that a matched (by the grid search) EMRT has at least a certain number of common peaks. That could reduce false positives. filterNonUniqueMatches should solve situations where more than one EMRTs are matched to the identification EMRT. This could happen because the used ranges for rt, mz or dt in the grid search were too large or the resolution of the MS was not high enough (I don't know whether this could be true). This allows us to rescue a few true matches that were ambiguous before.

In theory if two EMRTs have similar m/z, rt and dt, they should also share all the same fragments. Hence when they fall within the tolerances of a peptide, fragment information should not help and filterNonUniqueMatches() should be useless, since the two EMRTs should have the same fragments assigned.

If they fall within the tolerance of one (and only one) peptide PLGS should have identified it and we should be able to match it via grid search or via rescue. Fragment matching is interesting for non-identified EMRTs and to control the PLGS identification.

My feeling tells me that the reason for this discrepancy is that fragments need to be lower in intensity than their EMRTs, hence in the situation with these two EMRTs one of them is just lower in intensity than the fragments.

I don't understand what you want to say here.

pavel-shliaha commented 8 years ago

Let me put it this way: in HDMSE there is no precursor selection for fragmentation and peptides are separated by LC and IMS prior to fragmentation. Two peptides having similar m/z and dt will be co-fragmented. Fragments are then matched to precursors tentatively, (i.e. prior to database search) using rt and dt. What we see in the spectra that we load from .xml files for a peptide is fragments that fell within a certain tolerance of rt and dt of the peptide. The same fragment can be present in fragmentation spectrum of multiple peptides. Hence the two peptides mentioned above (having similar rt and dt) should have the same set of fragments.

When we match these EMRTs to a peptide using 3D search (since they have the same rt and dt), how come we can then distinguish them based on their fragments, if as mentioned above they should have the same fragments