コード例 #1
0
        public string ToOutputString()
        {
            StringBuilder sb = new StringBuilder();

            sb.Append(SpectraFileName);
            sb.Append('\t');
            sb.Append(OneBasedScan);
            sb.Append('\t');
            sb.Append(RetentionTime);
            sb.Append('\t');
            sb.Append(MonoisotopicMass);
            sb.Append('\t');
            sb.Append(MonoisotopicMass);
            sb.Append('\t');
            sb.Append(Charge);
            sb.Append('\t');
            sb.Append(string.Join(",", Peaks.Select(p => p.ExperimentalMz.ToString("F4"))));
            sb.Append('\t');
            sb.Append(Peaks.First().ExperimentalMz.ToMass(Charge));
            sb.Append('\t');
            sb.Append(SignalToNoise);
            sb.Append('\t');
            sb.Append(DeltaScore);
            sb.Append('\t');
            sb.Append(Math.Log(Peaks.Sum(p => p.ExperimentalIntensity)));
            sb.Append('\t');
            sb.Append(TotalScanDeconvolutedIntensity);
            sb.Append('\t');
            sb.Append(string.Join(",", Peaks.Select(p =>
                                                    (Math.Log(p.ExperimentalIntensity, 2) - Math.Log(p.TheoreticalIntensity, 2)) +
                                                    ";" +
                                                    (p.ExperimentalIntensity - this.Baseline) / this.NoiseFwhm)));

            return(sb.ToString());
        }
コード例 #2
0
        private void CalculateIntensityErrors()
        {
            double sumNormalizedAbundance   = Peaks.Sum(p => p.TheoreticalNormalizedAbundance);
            double sumExperimentalIntensity = Peaks.Sum(p => p.ExperimentalIntensity);

            foreach (var peak in Peaks)
            {
                double fractionOfTotalEnvelopeAbundance = peak.TheoreticalNormalizedAbundance / sumNormalizedAbundance;
                double theoreticalIntensity             = fractionOfTotalEnvelopeAbundance * sumExperimentalIntensity;
                peak.TheoreticalIntensity = theoreticalIntensity;
            }
        }