예제 #1
0
        public override IEnumerable <string> Process(string fileName)
        {
            var summary = new O18QuantificationSummaryItem
            {
                RawFilename              = _rawFilename,
                SoftwareVersion          = SoftwareVersion,
                PeptideSequence          = _peptide,
                AdditionalFormula        = _additionalFormula,
                PeptideAtomComposition   = _atomComposition.GetFormula(),
                PurityOfO18Water         = _purityOfO18Water,
                PeptideProfile           = _profile,
                ObservedEnvelopes        = _envelopes,
                IsPostDigestionLabelling = _isPostDigestionLabelling,
                TheoreticalO16Mz         = TheoreticalMz,
                Charge = Charge,
                ScanStartPercentage = _scanPercentageStart,
                ScanEndPercentage   = _scanPercentageEnd
            };

            summary.InitializeScanRange();
            summary.CalculateSpeciesAbundanceByLinearRegression();

            _fileFormat.WriteToFile(fileName, summary);

            return(new[] { fileName });
        }
예제 #2
0
        private Pattern DoGetProfile(AtomComposition ac, int charge)
        {
            AtomComposition ac2;

            if (charge == 0)
            {
                ac2 = ac;
            }
            else
            {
                ac2         = new AtomComposition(ac.GetFormula());
                ac2[Atom.H] = ac2[Atom.H] + charge;
            }

            var result = calculator.Calculate(ac2, 0, charge);

            return(result);
        }