Ejemplo n.º 1
0
        public LipidGroupSearchResult(LipidTarget lipidTarget, List <Lipid> lipidList, SpectrumSearchResult spectrumSearchResult, ScoreModel scoreModel)
        {
            LipidTarget          = lipidTarget;
            LipidList            = lipidList;
            SpectrumSearchResult = spectrumSearchResult;
            ShouldExport         = false;
            Score = scoreModel.ScoreLipid(this);

            if (spectrumSearchResult.HcdSpectrum != null)
            {
                DisplayScanNum = spectrumSearchResult.HcdSpectrum.ScanNum;
                DisplayMz      = spectrumSearchResult.HcdSpectrum.IsolationWindow.IsolationWindowTargetMz;
            }
            else if (spectrumSearchResult.CidSpectrum != null)
            {
                DisplayScanNum = spectrumSearchResult.CidSpectrum.ScanNum;
                DisplayMz      = spectrumSearchResult.CidSpectrum.IsolationWindow.IsolationWindowTargetMz;
            }

            if (spectrumSearchResult.PrecursorSpectrum == null)
            {
                return;
            }

            var pearsonCorrelationCalculator = new PearsonCorrelationFitUtil();

            PearsonCorrScore       = pearsonCorrelationCalculator.GetFitScore(spectrumSearchResult, lipidTarget.Composition);
            PearsonCorrScoreMinus1 = pearsonCorrelationCalculator.GetFitMinus1Score(spectrumSearchResult, lipidTarget.Composition);

            var cosineCalculator = new CosineFitUtil();

            CosineScore       = cosineCalculator.GetFitScore(spectrumSearchResult, lipidTarget.Composition);
            CosineScoreMinus1 = cosineCalculator.GetFitMinus1Score(spectrumSearchResult, lipidTarget.Composition);
        }
Ejemplo n.º 2
0
 public LipidGroupSearchResult(LipidTarget lipidTarget, List <Lipid> lipidList, SpectrumSearchResult spectrumSearchResult)
 {
     LipidTarget          = lipidTarget;
     LipidList            = lipidList;
     SpectrumSearchResult = spectrumSearchResult;
     DisplayScanNum       = spectrumSearchResult.HcdSpectrum.ScanNum;
     DisplayMz            = spectrumSearchResult.HcdSpectrum.IsolationWindow.IsolationWindowTargetMz;
     ShouldExport         = false;
     Score = 0;
 }
Ejemplo n.º 3
0
        public LipidGroupSearchResult(SpectrumSearchResult spectrumSearchResult, FragmentationMode fragmentationMode, Adduct adduct)
        {
            var msmsSpec = spectrumSearchResult.CidSpectrum ?? spectrumSearchResult.HcdSpectrum;

            LipidTarget          = new LipidTarget(msmsSpec.IsolationWindow.ToString(), LipidClass.Unknown, fragmentationMode, null, null, adduct);
            LipidList            = null;
            SpectrumSearchResult = spectrumSearchResult;
            DisplayScanNum       = msmsSpec.ScanNum;
            DisplayMz            = msmsSpec.IsolationWindow.IsolationWindowTargetMz;
            ShouldExport         = false;
            Score = 0;
        }
Ejemplo n.º 4
0
        protected bool Equals(LipidTarget other)
        {
            if (LipidClass != LipidClass.Unknown && other.LipidClass != LipidClass.Unknown)
            {
                return(LipidClass == other.LipidClass && FragmentationMode == other.FragmentationMode &&
                       Equals(Composition, other.Composition) &&
                       AcylChainList.OrderBy(x => x.NumCarbons)
                       .ThenBy(x => x.NumDoubleBonds)
                       .ThenBy(x => x.AcylChainType)
                       .SequenceEqual(
                           other.AcylChainList.OrderBy(x => x.NumCarbons)
                           .ThenBy(x => x.NumDoubleBonds)
                           .ThenBy(x => x.AcylChainType)));
            }

            return(LipidClass == other.LipidClass && FragmentationMode == other.FragmentationMode &&
                   CommonName.Equals(other.CommonName));
        }
Ejemplo n.º 5
0
 public SpectrumSearchResult(ProductSpectrum hcdSpectrum, ProductSpectrum cidSpectrum, Spectrum precursorSpectrum, List <MsMsSearchResult> hcdSearchResultList, List <MsMsSearchResult> cidSearchResultList, Xic xic, LcMsRun lcMsRun, ScoreModel scoreModel = null, LipidTarget lipidTarget = null)
 {
     HcdSpectrum         = hcdSpectrum;
     CidSpectrum         = cidSpectrum;
     PrecursorSpectrum   = precursorSpectrum;
     HcdSearchResultList = hcdSearchResultList;
     CidSearchResultList = cidSearchResultList;
     Xic           = xic;
     LcMsRun       = lcMsRun;
     PeakArea      = null;
     RunLength     = lcMsRun.GetElutionTime(lcMsRun.MaxLcScan);
     ApexScanNum   = Xic.GetNearestApexScanNum(PrecursorSpectrum.ScanNum, performSmoothing: true);
     ApexIntensity = Xic.Where(x => x.ScanNum == ApexScanNum).Sum(x => x.Intensity);
     RetentionTime = LcMsRun.GetElutionTime(ApexScanNum);
     if (scoreModel != null && lipidTarget != null)
     {
         ModelScore = scoreModel.ScoreLipid(lipidTarget, this);
     }
 }
Ejemplo n.º 6
0
 public SpectrumSearchResult(ProductSpectrum hcdSpectrum, ProductSpectrum cidSpectrum, List <MsMsSearchResult> hcdSearchResultList, List <MsMsSearchResult> cidSearchResultList, LcMsRun lcMsRun, ScoreModel scoreModel = null, LipidTarget lipidTarget = null)
 {
     HcdSpectrum         = hcdSpectrum;
     CidSpectrum         = cidSpectrum;
     PrecursorSpectrum   = null;
     HcdSearchResultList = hcdSearchResultList;
     CidSearchResultList = cidSearchResultList;
     Xic           = null;
     LcMsRun       = lcMsRun;
     PeakArea      = null;
     RunLength     = lcMsRun.GetElutionTime(lcMsRun.MaxLcScan);
     ApexScanNum   = 0;
     ApexIntensity = 0;
     RetentionTime = LcMsRun.GetElutionTime(hcdSpectrum?.ScanNum ?? cidSpectrum.ScanNum);
     if (scoreModel != null && lipidTarget != null)
     {
         ModelScore = scoreModel.ScoreLipid(lipidTarget, this);
     }
 }