From 5ce923dda46f2c6578a3de6b824f161a5953465a Mon Sep 17 00:00:00 2001 From: Chih-Chiang Tsou Date: Mon, 25 Apr 2016 08:44:54 -0500 Subject: [PATCH] linker parameter added (CXL) --- CrossLinker/nbproject/private/private.xml | 13 ++++++++- .../src/CXL_PeakPairFinder/CXL_MALDI.java | 4 ++- .../CrosslinkerPepFinder.java | 12 ++++---- .../CXL_PeakPairFinder/MS2PeakPairFinder.java | 12 ++++---- .../CXL_PeakPairFinder/PeakPairFinder.java | 12 ++++---- .../PrecursorCrossPepFinder.java | 8 ++++-- .../src/Exec/CrossLinkerDetection.java | 12 +++++++- CrossLinker/src/Exec/cxl.params | 4 +++ .../src/crosslinker/CrossLinkerHandler.java | 5 ++-- .../crosslinker/CrossLinkerScanResult.java | 28 ++++++++++--------- .../src/crosslinker/{DC4.java => Linker.java} | 11 ++++---- 11 files changed, 79 insertions(+), 42 deletions(-) rename CrossLinker/src/crosslinker/{DC4.java => Linker.java} (50%) diff --git a/CrossLinker/nbproject/private/private.xml b/CrossLinker/nbproject/private/private.xml index 2072743..fba6414 100644 --- a/CrossLinker/nbproject/private/private.xml +++ b/CrossLinker/nbproject/private/private.xml @@ -38,6 +38,17 @@ file:/C:/Umich/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/PeakPairFinder.java file:/C:/Umich/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/PrecursorCrossPepFinder.java - + + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/crosslinker/Linker.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/Exec/CrossLinkerDetection.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/crosslinker/FragmentPair.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/PrecursorCrossPepFinder.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/MS2PeakPairFinder.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/PeakPairFinder.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/crosslinker/CrossLinkerHandler.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/CrosslinkerPepFinder.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/CXL_PeakPairFinder/CXL_MALDI.java + file:/C:/Users/Cct/Documents/GitHub/DIA-Umpire/CrossLinker/src/crosslinker/CrossLinkerScanResult.java + diff --git a/CrossLinker/src/CXL_PeakPairFinder/CXL_MALDI.java b/CrossLinker/src/CXL_PeakPairFinder/CXL_MALDI.java index 15768db..4ccccec 100644 --- a/CrossLinker/src/CXL_PeakPairFinder/CXL_MALDI.java +++ b/CrossLinker/src/CXL_PeakPairFinder/CXL_MALDI.java @@ -12,6 +12,7 @@ import MSUmpire.PeptidePeakClusterDetection.PDHandlerMS1; import MSUmpire.SpectrumParser.MALDIDataParser; import MSUmpire.Utility.ConsoleLogger; +import crosslinker.Linker; import java.io.FileWriter; import java.io.IOException;; import java.util.ArrayList; @@ -37,6 +38,7 @@ public static void main(String[] args) throws IOException, InterruptedException, int NoCPUs=10; InstrumentParameter parameter=null; LCMSPeakBase lCMSPeakBase = null; + Linker linker=new Linker(); parameter = new InstrumentParameter(InstrumentParameter.InstrumentType.MALDI); MALDIDataParser parser = new MALDIDataParser(FilePath); parser.cycletime = 120f / 576f; @@ -67,7 +69,7 @@ public static void main(String[] args) throws IOException, InterruptedException, //detection.DetectSingleMZTraces(scans); //lCMSPeakBase.ExportPeakCurveResult(); - CrosslinkerPepFinder finder = new CrosslinkerPepFinder(lCMSPeakBase,0f); + CrosslinkerPepFinder finder = new CrosslinkerPepFinder(lCMSPeakBase,0f,linker); lCMSPeakBase.parameter.MS1PPM=200; lCMSPeakBase.parameter.RTtol=1f; finder.FindAllPairPeaks(NoCPUs); diff --git a/CrossLinker/src/CXL_PeakPairFinder/CrosslinkerPepFinder.java b/CrossLinker/src/CXL_PeakPairFinder/CrosslinkerPepFinder.java index 2f96235..2785a5e 100644 --- a/CrossLinker/src/CXL_PeakPairFinder/CrosslinkerPepFinder.java +++ b/CrossLinker/src/CXL_PeakPairFinder/CrosslinkerPepFinder.java @@ -4,11 +4,11 @@ */ package CXL_PeakPairFinder; -import MSUmpire.BaseDataStructure.InstrumentParameter; import MSUmpire.BaseDataStructure.XYData; import MSUmpire.LCMSPeakStructure.LCMSPeakBase; import MSUmpire.PeakDataStructure.PeakCluster; import MSUmpire.SpectralProcessingModule.ScanPeakGroup; +import crosslinker.Linker; import java.util.ArrayList; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -27,9 +27,11 @@ public class CrosslinkerPepFinder { public ArrayList IntactPepList; public ArrayList IntactPepListMS2; public float medianIntensity=-1f; - public CrosslinkerPepFinder(LCMSPeakBase LCMSPeakBase,float medianIntensity) { + Linker linker; + public CrosslinkerPepFinder(LCMSPeakBase LCMSPeakBase,float medianIntensity, Linker linker) { this.LCMSPeakBase = LCMSPeakBase; this.medianIntensity=medianIntensity; + this.linker=linker; } public void FindPairPeakMS2(ArrayList MS2PeakGroups, int NoCPUs) { @@ -41,7 +43,7 @@ public void FindPairPeakMS2(ArrayList MS2PeakGroups, int NoCPUs) IntactPepListMS2 = new ArrayList<>(); //For each scan for (ScanPeakGroup scan : MS2PeakGroups) { - MS2PeakPairFinder finder = new MS2PeakPairFinder(scan, LCMSPeakBase.parameter); + MS2PeakPairFinder finder = new MS2PeakPairFinder(scan, LCMSPeakBase.parameter, linker); executorPool.execute(finder); //finder.run(); IntactPepListMS2.add(finder); @@ -71,7 +73,7 @@ public void FindAllPairPeaks(int NoCPUs) { for (int i = 0; i < LCMSPeakBase.PeakClusters.size(); i++) { PeakCluster peakCluster = LCMSPeakBase.PeakClusters.get(i); if (peakCluster.NeutralMass() >= mzRange.getX() && peakCluster.NeutralMass() <= mzRange.getY()) { - PeakPairFinder unit = new PeakPairFinder(peakCluster, LCMSPeakBase.GetPeakClusterMassSearchTree(), LCMSPeakBase.parameter); + PeakPairFinder unit = new PeakPairFinder(peakCluster, LCMSPeakBase.GetPeakClusterMassSearchTree(), LCMSPeakBase.parameter, linker); templist.add(unit); executorPool.execute(unit); } @@ -102,7 +104,7 @@ public void FindAllPairPeaks(int NoCPUs) { //For any two peak pairs, check if they co-elute together (RT diff < RTtol) if (lowmass.lowMassPeak.NeutralMass()<=highmass.lowMassPeak.NeutralMass() && Math.abs(lowmass.lowMassPeak.PeakHeightRT[0] - highmass.lowMassPeak.PeakHeightRT[0]) < LCMSPeakBase.parameter.RTtol) { - PrecursorCrossPepFinder intactLinkedPep = new PrecursorCrossPepFinder(lowmass, highmass, LCMSPeakBase.GetPeakClusterMassSearchTree(), LCMSPeakBase.parameter); + PrecursorCrossPepFinder intactLinkedPep = new PrecursorCrossPepFinder(lowmass, highmass, LCMSPeakBase.GetPeakClusterMassSearchTree(), LCMSPeakBase.parameter, linker); IntactPepList.add(intactLinkedPep); executorPool.execute(intactLinkedPep); } diff --git a/CrossLinker/src/CXL_PeakPairFinder/MS2PeakPairFinder.java b/CrossLinker/src/CXL_PeakPairFinder/MS2PeakPairFinder.java index 678b3eb..d2de7da 100644 --- a/CrossLinker/src/CXL_PeakPairFinder/MS2PeakPairFinder.java +++ b/CrossLinker/src/CXL_PeakPairFinder/MS2PeakPairFinder.java @@ -22,7 +22,7 @@ import MSUmpire.BaseDataStructure.InstrumentParameter; import MSUmpire.SpectralProcessingModule.IsotopePeakGroup; import MSUmpire.SpectralProcessingModule.ScanPeakGroup; -import crosslinker.DC4; +import crosslinker.Linker; import java.util.ArrayList; import net.sf.javaml.core.kdtree.KDTree; import net.sf.javaml.core.kdtree.KeyDuplicateException; @@ -37,6 +37,7 @@ public class MS2PeakPairFinder implements Runnable { public ScanPeakGroup ScanPeak; InstrumentParameter parameter; + Linker linker; private KDTree PeakClusterKDTree; public ArrayList PeakPairGroupList; public ArrayList peakPairs = new ArrayList<>(); @@ -77,9 +78,10 @@ private IsotopePeakGroup FindTargetMWPeak(IsotopePeakGroup peakCluster, float ta return BestPeak; } - public MS2PeakPairFinder(ScanPeakGroup ScanPeak, InstrumentParameter parameter) { + public MS2PeakPairFinder(ScanPeakGroup ScanPeak, InstrumentParameter parameter, Linker linker) { this.ScanPeak = ScanPeak; this.parameter = parameter; + this.linker=linker; } @@ -106,9 +108,9 @@ public void run() { IsotopePeakGroup PeakCluster = ScanPeak.peakGroupList.get(i); PairGroupMS2 Pairgroup = new PairGroupMS2(PeakCluster); //Calculate MW of peak pair - float pairmw = PeakCluster.NeutralMass() + DC4.DABCO; + float pairmw = PeakCluster.NeutralMass() + linker.Core; Pairgroup.HighMassPeak = FindTargetMWPeak(PeakCluster,pairmw); - float DeadEndpairMW = PeakCluster.NeutralMass() + DC4.DABCO + DC4.H2O + DC4.Arm; + float DeadEndpairMW = PeakCluster.NeutralMass() + linker.Core + linker.H2O + linker.Arm; Pairgroup.DeadEndpairs = FindTargetMWPeak(PeakCluster,DeadEndpairMW); PeakPairGroupList.add(Pairgroup); } @@ -121,7 +123,7 @@ public void run() { PairGroupMS2 highmass = PeakPairGroupList.get(j); if (lowmass.LowMassPeak.NeutralMass() <= highmass.LowMassPeak.NeutralMass()) { - float IntactMW = lowmass.LowMassPeak.NeutralMass() + highmass.LowMassPeak.NeutralMass() + DC4.DABCO; + float IntactMW = lowmass.LowMassPeak.NeutralMass() + highmass.LowMassPeak.NeutralMass() + linker.Core; //Check if the precursor mass value of the MS2 spectrum is the summation of MW values of low and high peak pairs //If yes, then the two peak pairs are potentially crosslinking peptides diff --git a/CrossLinker/src/CXL_PeakPairFinder/PeakPairFinder.java b/CrossLinker/src/CXL_PeakPairFinder/PeakPairFinder.java index 7229104..6b60948 100644 --- a/CrossLinker/src/CXL_PeakPairFinder/PeakPairFinder.java +++ b/CrossLinker/src/CXL_PeakPairFinder/PeakPairFinder.java @@ -22,7 +22,7 @@ import MSUmpire.BaseDataStructure.InstrumentParameter; import MSUmpire.PeakDataStructure.PeakCluster; import MSUmpire.PeptidePeakClusterDetection.PeakCurveCorrCalc; -import crosslinker.DC4; +import crosslinker.Linker; import java.io.IOException; import java.util.HashMap; import net.sf.javaml.core.kdtree.KDTree; @@ -37,15 +37,17 @@ public class PeakPairFinder implements Runnable { private PeakCluster TargetPeak; InstrumentParameter parameter; + Linker linker; private final KDTree PeakClusterKDTree; float lowrt = 0f; float highrt = 0f; public PairGroup pairgroup; - public PeakPairFinder(PeakCluster peakClusterA, KDTree PeakClusterKDTree, InstrumentParameter parameter) { + public PeakPairFinder(PeakCluster peakClusterA, KDTree PeakClusterKDTree, InstrumentParameter parameter, Linker linker) { this.TargetPeak = peakClusterA; this.PeakClusterKDTree = PeakClusterKDTree; this.parameter = parameter; + this.linker=linker; lowrt = peakClusterA.PeakHeightRT[0] - parameter.RTtol; if (lowrt < 0) { lowrt = 0f; @@ -55,13 +57,13 @@ public PeakPairFinder(PeakCluster peakClusterA, KDTree PeakClusterKDTree, Instru @Override public void run() { - //linked pair : x + DC4.DABCO + //linked pair : x + Linker.Core pairgroup=new PairGroup(TargetPeak); //calculate MW of peak pair - float pairmw= TargetPeak.NeutralMass()+DC4.DABCO; + float pairmw= TargetPeak.NeutralMass()+linker.Core; pairgroup.highMassPeak=FindTargetMWPeak(pairmw); - float DeadEndpairMW = TargetPeak.NeutralMass()+ DC4.DABCO + DC4.H2O + DC4.Arm; + float DeadEndpairMW = TargetPeak.NeutralMass()+ linker.Core + linker.H2O + linker.Arm; pairgroup.DeadEndpairs=FindTargetMWPeak(DeadEndpairMW); } diff --git a/CrossLinker/src/CXL_PeakPairFinder/PrecursorCrossPepFinder.java b/CrossLinker/src/CXL_PeakPairFinder/PrecursorCrossPepFinder.java index ab981a7..172a21d 100644 --- a/CrossLinker/src/CXL_PeakPairFinder/PrecursorCrossPepFinder.java +++ b/CrossLinker/src/CXL_PeakPairFinder/PrecursorCrossPepFinder.java @@ -9,7 +9,7 @@ import MSUmpire.BaseDataStructure.InstrumentParameter; import MSUmpire.PeakDataStructure.PeakCluster; import MSUmpire.PeptidePeakClusterDetection.PeakCurveCorrCalc; -import crosslinker.DC4; +import crosslinker.Linker; import java.io.IOException; import java.util.HashMap; import net.sf.javaml.core.kdtree.KDTree; @@ -29,17 +29,19 @@ public class PrecursorCrossPepFinder implements Runnable{ public float MaxHighMassPeakCorr=0f; public float LowHighPeakCorr=0f; private float PrecCorssPeakPPM=1000f; + Linker linker; private InstrumentParameter parameter; float lowrt = 0f; float highrt = 0f; private final KDTree PeakClusterSearchTree; private CoElutePeak BestPrecursorPeak=null; - public PrecursorCrossPepFinder(PairGroup LowMassPeak, PairGroup HighMassPeak, KDTree PeakClusterSearchTree, InstrumentParameter parameter){ + public PrecursorCrossPepFinder(PairGroup LowMassPeak, PairGroup HighMassPeak, KDTree PeakClusterSearchTree, InstrumentParameter parameter, Linker linker){ this.LowMassPeakGroup=LowMassPeak; this.HighMassPeakGroup=HighMassPeak; this.PeakClusterSearchTree=PeakClusterSearchTree; this.parameter=parameter; + this.linker=linker; try { LowHighPeakCorr = PeakCurveCorrCalc.CalPeakCorr(LowMassPeak.lowMassPeak.MonoIsotopePeak, HighMassPeak.lowMassPeak.MonoIsotopePeak, parameter.NoPeakPerMin); if (Float.isNaN(LowHighPeakCorr)) { @@ -53,7 +55,7 @@ public PrecursorCrossPepFinder(PairGroup LowMassPeak, PairGroup HighMassPeak, KD highrt = Math.min(LowMassPeak.lowMassPeak.PeakHeightRT[0],HighMassPeak.lowMassPeak.PeakHeightRT[0]) + parameter.RTtol; } public void FindPrecursorCrossPeak(){ - float IntactMW = LowMassPeakGroup.lowMassPeak.NeutralMass()+HighMassPeakGroup.lowMassPeak.NeutralMass()+DC4.DABCO; + float IntactMW = LowMassPeakGroup.lowMassPeak.NeutralMass()+HighMassPeakGroup.lowMassPeak.NeutralMass()+linker.Core; float lowMW = InstrumentParameter.GetMzByPPM(IntactMW, 1, parameter.MS1PPM); float highMW = InstrumentParameter.GetMzByPPM(IntactMW, 1, -parameter.MS1PPM); diff --git a/CrossLinker/src/Exec/CrossLinkerDetection.java b/CrossLinker/src/Exec/CrossLinkerDetection.java index da04f7a..c638dee 100644 --- a/CrossLinker/src/Exec/CrossLinkerDetection.java +++ b/CrossLinker/src/Exec/CrossLinkerDetection.java @@ -17,6 +17,7 @@ import MSUmpire.SpectralProcessingModule.ScanIsotopePeakDetectionThread; import MSUmpire.SpectralProcessingModule.ScanPeakGroup; import MSUmpire.Utility.ConsoleLogger; +import crosslinker.Linker; import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; @@ -63,6 +64,7 @@ public static void main(String[] args) throws IOException, InterruptedException, Logger logger = Logger.getRootLogger(); InstrumentParameter parameter = null; + Linker linker=new Linker(); parameter = new InstrumentParameter(InstrumentParameter.InstrumentType.Orbitrap); parameter.MS1PPM = 20; parameter.MS2PPM = 600f; @@ -256,6 +258,14 @@ public static void main(String[] args) throws IOException, InterruptedException, parameter.MS2Pairing = Boolean.parseBoolean(value); break; } + case "CXL.CoreMass":{ + linker.Core=Float.parseFloat(value); + break; + } + case "CXL.ArmMass":{ + linker.Arm=Float.parseFloat(value); + break; + } //// } @@ -329,7 +339,7 @@ public static void main(String[] args) throws IOException, InterruptedException, } //Initialize crosslinker peak pair finder - CrosslinkerPepFinder finder = new CrosslinkerPepFinder(lCMSPeakBase, medianIntensity); + CrosslinkerPepFinder finder = new CrosslinkerPepFinder(lCMSPeakBase, medianIntensity, linker); //Find all peak pairs finder.FindAllPairPeaks(NoCPUs); diff --git a/CrossLinker/src/Exec/cxl.params b/CrossLinker/src/Exec/cxl.params index 88f4cee..8ac4509 100644 --- a/CrossLinker/src/Exec/cxl.params +++ b/CrossLinker/src/Exec/cxl.params @@ -19,3 +19,7 @@ SE.MassDefectFilter=true SE.DetectSameChargePairOnly=true SE.MS2Pairing=true SE.MS2PairTopN=5 + +#CXL linker +CXL.CoreMass = 112.0995 +CXL.ArmMass = 68 \ No newline at end of file diff --git a/CrossLinker/src/crosslinker/CrossLinkerHandler.java b/CrossLinker/src/crosslinker/CrossLinkerHandler.java index 59b7ed4..e4b402a 100644 --- a/CrossLinker/src/crosslinker/CrossLinkerHandler.java +++ b/CrossLinker/src/crosslinker/CrossLinkerHandler.java @@ -23,6 +23,7 @@ public class CrossLinkerHandler { public HashMap ResultMap = new HashMap<>(); public ArrayList CrossLinkingPeps = new ArrayList<>(); + public Linker linker; private void ReadFile(File folder) throws IOException { File[] listOfFiles = folder.listFiles(); @@ -40,7 +41,7 @@ private void ReadFile(File folder) throws IOException { Scan.MsLevel = 2; Scan.MGFTitle = Scan.MGFTitle.split("_")[Scan.MGFTitle.split("_").length - 2]; Scan.Normalization(); - CrossLinkerScanResult scanresult = new CrossLinkerScanResult(Scan); + CrossLinkerScanResult scanresult = new CrossLinkerScanResult(Scan,linker); Results.add(scanresult); } } else if (files.toLowerCase().endsWith(".pkl")) { @@ -48,7 +49,7 @@ private void ReadFile(File folder) throws IOException { pkl.scan.MsLevel = 1; pkl.scan.MGFTitle = pkl.scan.MGFTitle.split("_")[pkl.scan.MGFTitle.split("_").length - 2]; pkl.scan.Normalization(); - CrossLinkerScanResult scanresult = new CrossLinkerScanResult(pkl.scan); + CrossLinkerScanResult scanresult = new CrossLinkerScanResult(pkl.scan,linker); Results.add(scanresult); } } else { diff --git a/CrossLinker/src/crosslinker/CrossLinkerScanResult.java b/CrossLinker/src/crosslinker/CrossLinkerScanResult.java index 4697a9d..aafe887 100644 --- a/CrossLinker/src/crosslinker/CrossLinkerScanResult.java +++ b/CrossLinker/src/crosslinker/CrossLinkerScanResult.java @@ -22,26 +22,28 @@ public class CrossLinkerScanResult { public ArrayList DeadEndEvidence = new ArrayList<>(); public int DeadEndLinker = 0; public int MSlevel; + public Linker linker; public ArrayList PossibleFragmentScans = new ArrayList<>(); - public CrossLinkerScanResult(ScanData scan) { - Scan = scan; - MSlevel = scan.MsLevel; + public CrossLinkerScanResult(ScanData scan, Linker linker) { + this.Scan = scan; + this.MSlevel = scan.MsLevel; + this.linker=linker; } public void FindAllPairPeaks() { for (int i = 0; i < Scan.PointCount(); i++) { XYData peak = Scan.Data.get(i); - if (peak.getX() < DC4.Arm + 147) { + if (peak.getX() < linker.Arm + 147) { continue; } - if (Math.abs(Scan.GetPoinByXCloset(DC4.DABCO + DC4.Arm + DC4.H2O + DC4.H).getX() - (DC4.DABCO + DC4.Arm + DC4.H2O + DC4.H)) < Parameter.Tolerance) { - Fragment199 = Scan.GetPoinByXCloset(DC4.DABCO + DC4.Arm + DC4.H2O + DC4.H); + if (Math.abs(Scan.GetPoinByXCloset(linker.Core + linker.Arm + linker.H2O + linker.H).getX() - (linker.Core + linker.Arm + linker.H2O + linker.H)) < Parameter.Tolerance) { + Fragment199 = Scan.GetPoinByXCloset(linker.Core + linker.Arm + linker.H2O + linker.H); } - XYPointCollection peakrange = Scan.GetSubSetByXRange(peak.getX() + DC4.DABCO - Parameter.Tolerance, peak.getX() + DC4.DABCO + Parameter.Tolerance); + XYPointCollection peakrange = Scan.GetSubSetByXRange(peak.getX() + linker.Core - Parameter.Tolerance, peak.getX() + linker.Core + Parameter.Tolerance); for (int pk = 0; pk < peakrange.PointCount(); pk++) { - if (Math.abs(peakrange.Data.get(pk).getX() - (peak.getX() + DC4.DABCO)) < Parameter.Tolerance) { + if (Math.abs(peakrange.Data.get(pk).getX() - (peak.getX() + linker.Core)) < Parameter.Tolerance) { XYData[] pair = new XYData[2]; pair[0] = peak; pair[1] = peakrange.Data.get(pk); @@ -62,10 +64,10 @@ public void MatchPairMz() { if (MSlevel == 2) { matchmz = Scan.PrecursorMz; } else if (MSlevel == 1) { - matchmz = Scan.GetPoinByXCloset(pair[0].getX() + pair2[0].getX() + DC4.DABCO - DC4.H).getX(); - IntactPeps = Scan.GetPoinByXCloset(pair[0].getX() + pair2[0].getX() + DC4.DABCO - DC4.H); + matchmz = Scan.GetPoinByXCloset(pair[0].getX() + pair2[0].getX() + linker.Core - linker.H).getX(); + IntactPeps = Scan.GetPoinByXCloset(pair[0].getX() + pair2[0].getX() + linker.Core - linker.H); } - if (Math.abs(matchmz - (pair[0].getX() + pair2[0].getX() + DC4.DABCO - DC4.H)) < Parameter.Tolerance) { + if (Math.abs(matchmz - (pair[0].getX() + pair2[0].getX() + linker.Core - linker.H)) < Parameter.Tolerance) { FragmentPair fragpair = new FragmentPair(); fragpair.FragmentPair = new XYData[2][2]; fragpair.FragmentPair[0] = pair; @@ -78,9 +80,9 @@ public void MatchPairMz() { if (MSlevel == 2) { matchmz = Scan.PrecursorMz; } else if (MSlevel == 1) { - matchmz = Scan.GetPoinByXCloset(pair[0].getX() + DC4.DABCO + DC4.H2O + DC4.Arm).getX(); + matchmz = Scan.GetPoinByXCloset(pair[0].getX() + linker.Core + linker.H2O + linker.Arm).getX(); } - if (Math.abs(matchmz - (pair[0].getX() + DC4.DABCO + DC4.H2O + DC4.Arm)) < Parameter.Tolerance) { + if (Math.abs(matchmz - (pair[0].getX() + linker.Core + linker.H2O + linker.Arm)) < Parameter.Tolerance) { DeadEndEvidence.add(pair); } } diff --git a/CrossLinker/src/crosslinker/DC4.java b/CrossLinker/src/crosslinker/Linker.java similarity index 50% rename from CrossLinker/src/crosslinker/DC4.java rename to CrossLinker/src/crosslinker/Linker.java index 89f8df0..089a06e 100644 --- a/CrossLinker/src/crosslinker/DC4.java +++ b/CrossLinker/src/crosslinker/Linker.java @@ -8,10 +8,9 @@ * * @author Chih-Chiang Tsou */ -public class DC4 { - - public static float DABCO = 112.0995f; - public static float Arm = 68; - public static float H2O = 18; - public static float H = 1; +public class Linker { + public float Core = 112.0995f; + public float Arm = 68; + public float H2O = 18; + public float H = 1; }