MSMS Spectrum Filter Change Log Version 1.7.3507; August 8, 2009 - Added MSCollisionModeMatchType parameter - Allowed options are Contains, Exact, and RegEx - Default mode is "Contains" Version 1.4.3492; July 24, 2009 - Added support for MS Collision Mode filtering - When enabled, then only retains spectra that have the given collsion mode (e.g. cid or etd) - Updated to new version of Finnigan_Datafile_Info_Scanner.exe - Creates both the _ScanStats.txt and _ScanStatsEx.txt file - Removed clsAnalysisManagerSpectrumFilter.vb - Removed dependency on AnalysisManagerProg.exe and PRISM.Dll - Updated to Visual Studio 2008 Version 1.3.2979; February 27, 2008 - Updated to use AnalysisManagerProg.exe instead of AnalysisManagerBase.dll for the definition of interface ISpectraFilter Version 1.2.2959; February 7, 2008 - Updated to always compute and report the score values for Filter Mode 1 and Filter Mode2 if either filter mode is selected - The value in column Quality_Score will depend on the filter mode chosen - If Evaluate Spectrum Quality Only is unchecked, then the score value used to filter spectra will also depend on the filter mode chosen - Added option to use Log(Intensity) values when computing the Filter Mode 1 score values Version 1.2.2958; February 6, 2008 - Expanded the functionality of the Intensity Threshold Filter (Filter Mode 2) - Score values can now range from 0 to 1, with a range of values in between rather than simply 0, 0.25, 0.5, 0.75, or 1 Version 1.2.2957; February 5, 2008 - Updated the Amino Acid Spacing Filter (Mode 1) to choose the top data points to examine using S/N rather than raw abundance - By default, the top 50 data points with S/N values >= 5 are used - Improved the scoring scheme used by the Amino Acid Spacing Filter to consider all possible ion pairing options for a given data point, but only keep the match with the highest product of LightMember_S/N * HeavyMember_S/N - Updated to report the highest scoring SequenceTag found - A SequenceTag is a peptide fragment that matches a continuous set of peaks in a fragmentation spectrum - SequenceTag Scores are computed using the sum of the product of the S/N values for each pairwise set of peaks that defines the residues in a sequence tag - Updated the _SpectraQuality.txt file created by the Amino Acid Spacing Filter to include several new columns: - Scan_Number_Start, Scan_Number_End, Charge: Corresponds to the information provided for the given spectrum - Quality_Score: The quality score computed for the given spectrum. For Filter Mode 1, this is equiavalent to column PercentAbundantPeaksWithMassDiffMatches - Precursor_MZ: The Precursor m/z value for the given spectrum - BPI: The base peak intensity value - IonPair_Count: The number of data point pairs that are spaced apart by a standard amino acid mass (as 1+ or 2+ peaks) - IonPair_Score: Computed as (IonPair_Count - StandardSpacingMinimum) / (StandardSpacingMaximum - StandardSpacingMinimum) though, if this value is > 1 then it will be reported as 1 - PercentMassSpaceMatched: After all data point pairs are found, the total non-overlapping m/z space of the data is computed, and then that value is divided by the total m/z space in the mass spectrum to arrive at this value. Larger values mean that more of the data in the spectrum can possibly be explained by a standard amino acid mass spacing - PercentAbundantPeaksWithMassDiffMatches: This is a signal-to-noise based measure of the fraction of the data points examined that were found to match another data point within a standard amino acid mass spacing. Computed as Sum(IonPairMemberLight_S/N * IonPairMemberHeavy_S/N) / AbundantPeaksSumSquares where AbundantPeaksSumSquares = Sum(WorkingDataPoint_S/N * WorkingDataPoint_S/N) - SequenceTagLengthMax: Length of the longest Sequence Tag found - SequenceTag: Longest Sequence Tag found - AbundantPeaksSumSquares: Sum of the square of the signal-to-noise value for each of the top x data points examined (default top 50 points with S/N values >= 5) Version 1.2.2952; January 31, 2008 - Updated the Amino Acid Spacing filter (Filter Mode 1) to return a quality score between 0 and 1 - Score values are dependent on the number of standard mass spacing values found - Seprate minimum and maximum mass spacing values can be defined for charges 1+, 2+, 3+, and 4+ (charges of 5+ or higher use the 4+ settings) - Added option for Filter Mode 1 to filter data by signal to noise (S/N) ratios - If "Enable segmented S/N" is true, then each mass spectrum will be divided into multiple segments (default 300 m/z wide) and a separate noise value will be computed for each segment - If "Enable segmented S/N" is false, then a spectrum wide noise value will be computed - Consolidated some duplicate code that was shared by functions ProcessDtaFile and ProcessDTATextOrMGF - Now hiding the Neutral Loss columns from the _SpectraQuality.txt if not using Filter Mode 3 Version 1.1.2795; August 27, 2007 - Updated call to ValidateRequiredDLLs() to only check for the required DLL files once Version 1.1.2579; January 23, 2007 - Now using class clsProgRunnerThreaded to run the Finnigan_Datafile_Info_Scanner.exe program rather than using clsProgRunner in PRISM.DLL - Necessary to allow MsMsSpectrumFilter.dll to work with older versions of Prism.DLL Version 1.1.2578; January 22, 2007 - Switched to using Finnigan_Datafile_Info_Scanner.exe for reading the MS Level from Finnigan .Raw files - Necessary because the Xcalibur XDK locks the .Raw file even after the file is closed, so we need to read the MS Level using an external .Exe Version 1.1.2572; January 16, 2007 - Added support for filtering by MS Level (i.e. only keep MS2 spectra or only keep MS3 spectra) - Specify using "MSLevelFilter" entry in the "FilterOptions" section of the XML settings file Version 1.0.2565; January 9, 2007 - Updated the quality score value saved for spectra analyzed with Filter Mode 3 to be 0 or 1 (or -1 or 1), depending on MinimumQualityScore Version 1.0.2564; January 8, 2007 - Now checking for loss of (98+18) = 116 (if "Consider Water Loss" is enabled) - Rearranged the order of the NL intensity columns in the _SpectraQuality.txt file - Also, now rounding the neutral loss intensity values to 0 decimal places Version 1.0.2543; December 18, 2006 - Reworked Mode 3 (Phosphorylation Neutral Loss Filter) - Removed submodes for this filter and instead now have options LimitToChargeSpecificIons and ConsiderWaterLoss - Expanded the phosphorylation masses searched for (considers charge only if LimitToChargeSpecificIons=True) - All spectra: loss of 98 from the parent m/z - 2+ spectra: loss of 98/2 = 49 - 2+ spectra: loss of (98+18)/2 = 58 - 2+ spectra: loss of (98*2+18)/2 = 107 - 3+ spectra: loss of 98/3 = 32.66 - 3+ spectra: loss of (98*2)/3 = 65.32 - 3+ spectra: loss of (98+18)/3 = 38.66 - 3+ spectra: loss of (98*2+18)/3 = 71.32 - Changed from allowing user to provide a specific m/z value to search for to allowing the user to provide a specific list of m/z values to consider for neutral loss from the parent ion (using SpecificMZLosses) Version 1.0.2081.30030; September 12, 2005 - Changed the parameter names for FilterMode3 - Old Name New Name BasePeakIntensityMinimum MarginOfError MassToleranceHalfWidthMZ Tolerance AbundanceFactor AbundanceFactor PeakMZ PeakMZForMode4 - Renamed the GenerateMissingChargeStates parameters from MinValue and MaxValue to MinimumCharge and MaximumCharge Version 1.0.2068.31564; August 30, 2005 - Updated the property functions in class clsMsMsSpectrumFilter to consolidate and group related settings for each filter into SetFilterMode() and GetFilterMode() functions August 17, 2005 - Fixed bug that incorrectly called SortSpectrumQualityTextFile when FilterSpectra was False August 15, 2005 - Renamed some of the FilterMode3 parameters in the XML Settings file August 3, 2005 - Updated to use SharedVBNetRoutines.dll June 15, 2005 - Updated to include the filter mode 3 (neutral loss filter) and to use the IDtaGenerator interface March 22, 2005 - Initial release