private void AddPeak(Dictionary <int, List <PeakEntry> > map, double maxPeakIntensity, int scan, Peak peak)
        {
            var mz = (int)(Math.Round(peak.Mz));

            List <PeakEntry> entries;

            if (!map.TryGetValue(mz, out entries))
            {
                entries = new List <PeakEntry>();
                map[mz] = entries;
            }

            var relativeIntensity = peak.Intensity / maxPeakIntensity;

            var       gap   = PrecursorUtils.ppm2mz(peak.Mz, options.ProductIonPPM);
            PeakEntry entry = new PeakEntry()
            {
                Ion    = new Peak(peak.Mz, peak.Intensity),
                FromMz = peak.Mz - gap,
                ToMz   = peak.Mz + gap
            };

            entry.Intensities.Add(new SourcePeak(scan, peak.Mz, relativeIntensity));
            entries.Add(entry);
        }
Exemplo n.º 2
0
        private static void AddEntry(List <PeakEntry> entries, PeakEntry entry)
        {
            for (int i = 0; i < entries.Count; i++)
            {
                if (entries[i].FromMz > entry.FromMz)
                {
                    entries.Insert(i, entry);
                    return;
                }
            }

            entries.Add(entry);
        }
Exemplo n.º 3
0
        private void AddPeak(List <PeakEntry> map, double maxPeakIntensity, int scan, Peak peak)
        {
            var relativeIntensity = peak.Intensity / maxPeakIntensity;

            PeakEntry entry = new PeakEntry()
            {
                Ion         = peak,
                Intensities = new List <Pair <int, double> >()
            };

            entry.Intensities.Add(new Pair <int, double>(scan, relativeIntensity));

            var ppm = PrecursorUtils.ppm2mz(peak.Mz, productIonPPM);

            entry.FromMz = peak.Mz - ppm;
            entry.ToMz   = peak.Mz + ppm;

            map.Add(entry);
        }
        private void AddPeak(Dictionary <int, List <PeakEntry> > map, double maxPeakIntensity, int scan, Peak peak, double mzTolerance)
        {
            var mz = (int)(Math.Round(peak.Mz));

            List <PeakEntry> entries;

            if (!map.TryGetValue(mz, out entries))
            {
                entries = new List <PeakEntry>();
                map[mz] = entries;
            }

            var relativeIntensity = peak.Intensity / maxPeakIntensity;

            PeakEntry entry = new PeakEntry()
            {
                Ion    = new Peak(peak.Mz, peak.Intensity),
                FromMz = peak.Mz - mzTolerance,
                ToMz   = peak.Mz + mzTolerance
            };

            entry.Intensities.Add(new SourcePeak(scan, peak.Mz, relativeIntensity));
            entries.Add(entry);
        }