Methods, media, and systems for targeted isotope clustering

By using peak detection algorithms and predicted fragment lists to match in laboratory analysis instruments, the charge clusters and isotope profiles are solved, and the problems of high time and resource consumption and error transfer in the prior art are solved, achieving more efficient and accurate analysis results.

CN119816915APending Publication Date: 2025-04-11WATERS TECH IRELAND LIMITED IE
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380057351.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-05-31
Filing Date
2023-05-31
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

The prior art has problems with time and resource consumption when identifying isotopes and charge states in samples in laboratory analytical instruments, and early errors can lead to reduced accuracy of subsequent matching results.

Method used

By receiving the generated spectrum in the analysis device, detecting the peaks using a peak detection algorithm, and matching with the list of predicted fragments, a potential match list is generated, and then a charge cluster and isotope profile are constructed to improve the accuracy and efficiency of the match.

Benefits of technology

This method greatly reduces the time and resources required for matching, improves the accuracy and efficiency of the analysis, enables higher possibility of identifying fuzzy fragments, and provides more accurate isotope profiles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119816915A_ABST
    Figure CN119816915A_ABST
Patent Text Reader

Abstract

Exemplary embodiments provide computer-implemented methods, media, and apparatuses configured to perform targeted isotope clustering. A mass spectrum of a sample may be obtained from an analytical laboratory instrument, and a set of peaks within the mass spectrum may be identified. A list of segments expected to potentially exist in the sample may be obtained, and a set of predicted peaks may be generated from the list. The predicted peaks may be searched in the mass spectrum to determine whether any combination of the peaks present in the mass spectrum matches an expected fragment pattern. Thus, isotopic (charge) clusters can be constructed in a targeted manner using priori knowledge to target the match. Thus, spectral analysis can be completed faster and more efficiently and the matching can be performed more accurately compared to conventional systems using neutral or non-targeted matching.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of and priority to U.S. Provisional Patent Application No. 63 / 347,208, filed May 31, 2022. The entire disclosure of that application is hereby incorporated herein by reference. Background Art

[0003] Laboratory analytical instruments are devices used to qualitatively and / or quantitatively analyze samples. They are often used in a laboratory setting for scientific research or testing. Such devices can measure the chemical composition of a sample, the amount of a component in a sample, and perform similar analyses. Examples include mass spectrometers, chromatographs, titrators, spectrometers, elemental analyzers, particle size analyzers, rheometers, thermal analyzers, etc.

[0004] Laboratory analytical instruments can produce raw data readings that are combined into a spectrum representing the measured values ​​of a sample. For example, a mass spectrometer can decompose a subset of precursor ions into a set of product ions, and then accelerate the product ions and the remaining precursor ions through a magnetic field. Due to the effect of the magnetic field, the ions will hit different positions on the detector. Because ions with the same mass-to-charge ratio (m / z) will be deflected by the magnetic field by approximately the same amount, the detector can measure the number of ions that hit various positions, thereby mapping each position to a corresponding mass-to-charge ratio. When plotted (according to m / z and intensity), these results represent a mass spectrum.

[0005] Due to the presence of different isotopes in an ion, the ion can be composed in different ways. For example, the methyl cation CH3 + The mass can be 15 (when carbon-12 and protium isotopes such as 12 C 1 H3 + bonding) to 19 (when carbon-13 is bonded to deuterium isotopes such as 13 C 2 H3 + Similarly, because different ions can have different charge states (representing the net charge on the ion), the charge value of a given ion can vary. Accurately identifying the isotopes present in a sample and the charge states of the sample's precursor and product ions is an important part of accurately measuring the sample's chemical composition. Summary of the invention

[0006] Exemplary embodiments relate to improved techniques for identifying isotopes in analytical chemical data.Exemplary embodiments may include a computer-implemented method, as well as a non-transitory computer-readable medium storing instructions for performing the method, an apparatus configured to perform the method, and the like.

[0007] According to a first embodiment, a computer-implemented method includes receiving at an analysis device a spectrum generated by analyzing a sample using a laboratory analytical instrument, the spectrum including a plurality of detected peaks. The spectrum can be a mass spectrum that maps the detected mass-to-charge ratio (m / z) of precursor ions and product ions to the intensity of the frequency or number of times the ions of the detected m / z ratio are recorded on the detector of the laboratory analytical instrument. The detected peaks can be detected by a peak detection algorithm operating on a server or cloud computing device and stored in a peak list, which contains at least the m / z value of the detected peak and the intensity of the detected peak.

[0008] A list of predicted fragments potentially present in the sample may be received at the analysis device. The list of predicted fragments may be retrieved by searching the ion library for a user-selected set of molecules expected to be present in the sample.

[0009] The list of predicted fragments can be retrieved from an ion library hosted at a server, cloud computing service or other locations including a known fragmentation pattern of a molecule. The fragmentation pattern may include an ion list, which may include a precursor ion, which is known or predicted to be produced when the molecule is subjected to ionization. The fragmentation pattern can be formed by experiment, modeling, based on professional analysis, etc. In some embodiments, the known chemical composition of a precursor or analyte of interest can be selected, and the chemical composition can be processed to identify the chemical composition of the fragment that may be produced by the ionization of the precursor / analyte. Because the universality of some isotopes may be known, the expected isotopic pattern of each fragment can be calculated based on its chemical composition. This produces a predicted pattern of neutral mass, which can be further processed to convert these masses into predicted m / z values ​​for each possible charge state.

[0010] Thus, each predicted fragment may be associated with one or more isotopes comprising the predicted fragment, a potential charge state of the fragment, and an associated mass value based on the isotopic composition and / or predicted m / z value.

[0011] The list of predicted fragments can be matched to the plurality of detected peaks based on a mass tolerance to generate a list of potential matches at the analysis device. The mass tolerance can define an acceptable range of values ​​(e.g., in parts per million or "ppm") within which a detected peak will be considered a match to a predicted peak from the predicted fragments. The mass tolerance can be user-specified and / or can be a default value.

[0012] At this stage, a minimum threshold intensity can be established below which detected peaks will not be considered for matching. Peaks below this minimum threshold intensity can be ignored under the assumption that they are merely generated by noise in the analysis.

[0013] In order to check the detected peak according to the mass tolerance, the analysis device can consider each detected peak above the minimum intensity threshold in turn. For each isotope of each fragment under each charge state (optionally up to a specified maximum charge state; see the seventh embodiment), the observed m / z of the peak can be compared with the expected m / z of the predicted isotope. If the observed m / z is within the mass tolerance of the expected m / z, the predicted isotope can be recorded as a possible match in the list of potential matches.

[0014] This process of mass matching detected peaks to potential isotopes is referred to herein as the first stage of processing. At the end of this stage, a complete list of every possible match between observed peaks and predicted isotopes that would pass the mass error criteria has been built.

[0015] As a second stage of processing at the analysis device, one or more charge clusters may be constructed from the list of potential matches based on how closely the intensity of each potential match in the list corresponds to the expected intensity of the corresponding predicted fragment. The goal of this stage is to form charge clusters based on observed spectra whose isotopic profiles closely match the predicted isotopic profiles.

[0016] Constructing the charge cluster may involve considering each detected peak in the observed spectrum. The peaks may be considered in order of intensity (i.e., from the most intense to the least intense), since prioritizing intensities generally tends to produce the most reliable matches. Nevertheless, each peak will eventually be considered. If the selected peak has more than one predicted isotope (which is close enough to pass the mass filter in the previous stage), each predicted isotope will be considered in turn (optionally, in order of how close the predicted isotope is to the selected peak in terms of mass).

[0017] One of the parameters considered by the logic may be a maximum possible charge state, which may be set to a default value (e.g., 10) and / or specified by a user (see the seventh embodiment below). Each possible charge state may be considered in turn until the maximum possible charge state. For each charge state, the logic may determine which isotope has the greatest intensity expected. A list of peaks that match the isotope during this first stage of the process may be retrieved and considered in order of intensity.

[0018] In some embodiments, instead of the maximum possible charge state, the system may present a list of possible charge states that can be observed in a given input m / z range for a particular sample. The possible charge states may optionally be limited by a user-specified maximum value. The user may select a charge state from the list (or may allow a search for all possible charge states).

[0019] By selecting the predicted fragment isotope and matching experimental peak, an intensity expectation is established, and other adjacent peaks can be evaluated according to the expected intensity. Specifically, the predicted fragment pattern describes the relative prevalence of different isotopes in the fragment. The most common isotope (and therefore the isotope with the maximum expected intensity) can be considered as a reference value (e.g., 100%). The remaining isotopes in the pattern can be measured according to the reference value (e.g., the value of the isotope whose prevalence is half of the most common isotope can be considered as 50%). The intensity of the experimental peak matched with the predicted fragment isotope (with the maximum expected intensity) can be used as a reference (e.g., if the intensity of the experimental peak is 300, the intensity of the most common isotope will be expected to be 300, and the intensity of the isotope with half the prevalence will be expected to be 150).

[0020] Thus, an intensity expectation can be established for each isotope in the predicted fragment, and the intensity expectation is compared with the corresponding peak in the observed spectrum. If a particular peak matches an expected intensity above a threshold (e.g., a threshold in the range of 60% to 85%, preferably 60% to 80%, more preferably 65% ​​to 75%, and most preferably about 70% of the expected intensity), the peak is accepted. If it does not match, the peak is rejected.

[0021] By performing this comparison peak by peak across the cluster, an isotope profile is constructed. The isotope profile may include the accepted peaks. Some predicted peaks may not have been observed within the threshold limits and therefore may not be present in the isotope profile, i.e., the profile may include gaps where individual peaks were rejected.

[0022] Subsequently, an isotope profile fitting calculation can be performed for the entire cluster. For example, the logic can compare the total expected intensity of all isotopes in the cluster (scaled based on the intensity expectation discussed above) with the total intensity of the corresponding matching peak position in the observed spectrum. These sums can be compared to a threshold (which can be the same as the intensity threshold used to compare with each individual peak, or can be different, as discussed above). If the entire cluster meets the intensity threshold, it can be accepted as the final match. If not, the entire cluster can be rejected and not further considered.

[0023] Thus, the logic forms a list of candidate charge clusters that can be constructed from the observed spectrum based on the prediction. In practice, there is usually (although not necessarily always) a single set of charge clusters that meets the above threshold criteria. If there is more than one set of charge clusters, these sets can be stored in a database. One or more candidate sets can be presented on a display of the analysis device so that a user can select a particular set; alternatively, the logic can select the set that best matches the observed spectrum (see the third embodiment below).

[0024] According to a second embodiment suitable for use with the first embodiment, a fuzzy set of detected peaks that can match two or more predicted segments may be identified.

[0025] Multiple isotope profiles that match the same raw data point may not have isotopes that are unique to one of the isotope clusters. In these cases, they may not be distinguished. In the case where there is a unique isotope in one of the isotope clusters, the logic can distinguish between competing isotope profiles that cause fuzzy matches, and those isotope profiles are marked as partially fuzzy to the user. In this way, conflicting isotope profiles on the same raw data region can be detected and marked to the user.

[0026] Peaks may be ambiguous for a variety of reasons. For example, two or more fragments that may match the peak may have very similar neutral masses and sufficiently similar compositions that they cannot be distinguished by mass or isotope profile (they will appear identical in the observed spectrum). For example, some molecules are palindromic or symmetric (at least at the ends, and may have very few unique monomers), which may be achieved by design. This is called complete ambiguity because the ambiguity may be indistinguishable.

[0027] In another example, a peak / fragment may have ambiguous harmonics. That is, two or more ions may have charge states that are consistent in such a way that one of the ions may match every nth isotope of the other ion in at least one charge state. Such ions may be partially ambiguous because the ambiguity may be resolvable.

[0028] In yet another example, the peaks / fragments may represent adjacent peaks / fragments that overlap. In this case, the ions are not close enough in m / z to fully overlap or form harmonics, but do have some overlap between the lightest isotope of one ion and the heaviest isotope of the other. Since the two ions may not occupy the same space overall on the m / z axis, this type of ambiguity may be resolved by mass fitting or isotope fitting, depending on the circumstances. Therefore, these ambiguities can also be local.

[0029] The fuzzy set of detected peaks can be labeled with an indication of the two or more predicted segments. In some embodiments, the fuzzy set of detected peaks can be displayed on a display of the analysis device along with an explanation of why the peak is fuzzy (e.g., which of the above fuzziness categories applies to the peak).

[0030] According to a third embodiment suitable for use with the first embodiment or the second embodiment, the best fit can be selected from the final set of matches based on which charge cluster accounts for the maximum total intensity of the corresponding detected peak. As described above, isotope profiles can be added to the final set of matches based on the isotope profiles accounting for at least a predetermined minimum threshold amount of the intensity observed in the spectrum. In the third embodiment, any one of the isotope profiles that accounts for the maximum intensity can be selected as the best fit.

[0031] According to a fourth embodiment suitable for use with any one of the first to third embodiments, a quality metric may be calculated for at least one of the charge clusters stored in the final set of matches. The quality metric may represent one or a combination of an isotope spacing mean, an isotope spacing median, an isotope spacing deviation, a mass error mean, a mass error median, or a mass error deviation. The calculated quality metric may be displayed on a display. In general, the more evenly the matches of the charge cluster are spaced apart, the more likely the match is to be a correct match (i.e., a confidence score may be assigned to the match, and a more evenly spaced match may be associated with a higher confidence score).

[0032] According to a fifth embodiment suitable for use with any one of the first to fourth embodiments, the expected intensity can be associated with a threshold value in the range of 60% to 85%, preferably 60% to 80%, more preferably 65% ​​to 75%, and most preferably about 70%. A threshold of 70% tends to capture the best match. A lower threshold can capture more possible matches, but also captures false positives. When it is lower than about 60%, the false positive rate becomes quite high. As the threshold increases, the logic becomes more stringent in its matching and filters out more possible isotope profile matches. When it is higher than about 80%, almost all matches are filtered out because real-world data may not be clean enough to match the prediction so closely (that is, the 80% threshold assumes an impossible data integrity level). Nevertheless, it has been found that for some applications, the threshold can be increased to as high as 85% to obtain the best matching quality, while understanding that some data will be lost.

[0033] According to a sixth embodiment suitable for use with any one of the first to fifth embodiments, the first charge cluster and the second charge cluster can be matched to the same detected peak. After the first charge cluster is matched to the detected peak, the intensity of the detected peak can be ignored when matching the second charge cluster. This allows the logic to match isotopes to two different peaks, which means that errors early in the process are less likely to become complicated (as discussed in more detail below with respect to conventional techniques).

[0034] According to a seventh embodiment suitable for use with any one of the first to sixth embodiments, the maximum charge of the precursor ion in the analysis can be limited. The list of predicted fragments can be limited based on the maximum charge of the precursor ion. This allows the possible search space for isotope profile matching to be limited to a reasonable number, thereby further improving processing speed and reducing resource requirements.

[0035] Conventional algorithms process raw spectral data in a non-targeted manner, and therefore lose some information about conflicts between isotope clusters in the raw data region. In contrast, exemplary embodiments match predicted isotope clusters with the raw data. This makes it possible to match two predicted isotope clusters with the same raw data region. In conventional methods, this information is lost because the processed raw data point is a single entity removed from consideration after the first match has been performed. In the method described herein, more than one isotope cluster that can form this entity can be identified, and therefore all isotope clusters in the isotope clusters that compete for the same raw data point can be matched. Different possible combinations and suggestions on how to use this information (e.g., describing the type of ambiguity present in the data, or the reason why the data cannot be matched with a single clear isotope profile) can be marked to the user.

[0036] For those skilled in the art, other technical features can be easily seen from the following figures, descriptions and claims.

[0037] Unless otherwise indicated, it is contemplated that each embodiment can be used alone to achieve the advantages specifically noted above. It is also contemplated that the embodiments described above (and elsewhere herein) can be used in any combination to achieve further synergistic effects. Other technical features will be readily apparent to those skilled in the art from the following figures, descriptions, and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] To easily identify the discussion of any particular element or act, the most significant digit(s) in a reference number refers to the figure numeral that first introduces that element.

[0039] Figure 1 An analytical laboratory system 100 suitable for use with the exemplary embodiments is illustrated.

[0040] Figure 2A An example of a mass spectrum 200 is depicted.

[0041] Figure 2B Depicted are examples of predicted fragment ions generated from fragmentation of a known oligonucleotide sequence according to an exemplary embodiment.

[0042] Figure 3is a data flow diagram illustrating the flow of input and output in an exemplary system.

[0043] Figure 4 Examples of spectra that have been matched to predicted ion patterns are depicted.

[0044] Figure 5 Examples of spectra that have not been matched to predicted ion patterns are depicted.

[0045] FIG. 6A to FIG. 6B is a flow chart depicting logic 600 for performing isotope clustering according to an exemplary embodiment.

[0046] Fig. 7A An example of a blurred spectrum where two fragments share similar neutral mass and composition is depicted.

[0047] Figure 7B An example of a spectrum exhibiting blurred harmonics is depicted.

[0048] Figure 7C An example of a spectrum that could potentially be matched to two overlapping ion patterns is depicted.

[0049] Figure 8 An exemplary computer system architecture is depicted that can be used to practice the exemplary embodiments described herein. DETAILED DESCRIPTION

[0050] One step in laboratory analysis may be to identify isotopes present in a sample. Conventionally, this is accomplished by acquiring a spectrum as described above and identifying peaks in the spectrum (i.e., m / z values ​​in the spectrum with relatively high levels of intensity, indicating the possible presence of ions with corresponding m / z values ​​in precursor or product ions). These peaks form a signature that can be matched to a database of ions with known characteristics.

[0051] There are several problems with conventional isotope matching techniques. First, these techniques usually require a lot of time and computing resources. Any given mass spectrum may include ions formed by different possible combinations of isotopes (producing ions of different masses). When each precursor ion is fragmented, the product ions produced can collect different levels of charge. These combinations of mass and charge produce m / z patterns, which must be matched to each other in combination with all possible ions found in the database. For example, a sample may contain multiple precursor ions, and each of the multiple precursor ions is segmented into different (possibly overlapping) product ion sets with different masses and charges, except for impurities that can introduce additional precursor ions and product ions. The system needs to match precursor ions and their corresponding product ions in combination with all possibilities present in the database.

[0052] As a result, the computing system must consider an excessive amount of data when performing the matching. This consumes memory, processing power, energy, and time. If results are required within a relatively short deadline, it may not be possible to match ions unless a large amount of computing resources are devoted to solving the problem.

[0053] Second, conventional techniques can compound errors encountered early in the matching process. In a typical isotope matching process, the system attempts to identify the combination of peaks that the system is most confident of as a first match (e.g., "this particular set of peaks in the data matches the fragmentation pattern of ion X with charge state Y in the database with 93% accuracy"). The system then removes matching peaks from consideration and repeats the process with any remaining peaks.

[0054] However, some errors will almost certainly occur when performing these matches due to the presence of noise, incomplete decomposition of precursor ions, impurities, incomplete configuration of laboratory analytical instruments, etc. If a collection of peaks in the data are incorrectly matched to ions in the database, those peaks are removed from consideration and are not subsequently considered for matching to the next round of candidate ions. As a result, some peaks representing actual precursor or product ions may be excluded from the analysis, which may lead to further false matches. This results in lower accuracy because problems early in the analysis corrupt later results, and errors continue to be propagated serially.

[0055] Exemplary embodiments address these issues by targeting an isotope matching process with a priori expectations. Most laboratory tests are performed without any a priori knowledge about the sample. For example, it may be known that the sample contains certain molecules or combinations of molecules, but it is not known which isotopes the molecules are composed of. Alternatively, a laboratory test may attempt to determine whether compound X is present in sample Y; the identity of the target (compound X) is known. Still further, a laboratory test may attempt to determine the purity of a sample, i.e., the amount of a predetermined compound compared to other compounds in the sample. Therefore, it is often the case that at least some of the expected precursor ions present in the sample are known before the sample analysis is performed.

[0056] While conventional techniques use the mass spectrum obtained from the analysis of a sample as a starting point (trying to match the peaks in the mass spectrum to a database of known ions), the exemplary embodiment begins by identifying patterns expected to be seen in the data based on prior knowledge about the sample. These known patterns can then be matched to the patterns observed in the mass spectrum, if possible. This greatly reduces the time and resources required to make the match, while also allowing for greater accuracy and the possibility of accounting for ambiguous fragments (i.e., fragments that can be matched to two or more possible ions, but conventional techniques usually match unambiguously to one or another possible ion).

[0057] To aid understanding, a series of examples will first be presented before describing a detailed description of the underlying implementation. It should be noted that these examples are merely illustrative, and the present invention is not limited to the embodiments shown.

[0058] Reference is now made to the accompanying drawings, in which like reference numerals are used to refer to like elements throughout. In the following description, for the purpose of explanation, many specific details are set forth in order to provide a thorough understanding thereof. However, novel embodiments may be practiced without these specific details. In other cases, well-known structures and devices are shown in the form of block diagrams to facilitate description thereof. It is intended to cover all modifications, equivalents, and substitutes consistent with the claimed subject matter.

[0059] In the drawings and accompanying description, the names "a", "b", and "c" (and similar designations) are intended to be variables representing any positive integers. Thus, for example, if an implementation sets a value of a=5, the complete set of components 122, shown as components 122-1 through 122-a, may include components 122-1, 122-2, 122-3, 122-4, and 122-5. The embodiments are not limited in this context.

[0060] These and other features will be described in more detail below with reference to the accompanying drawings.

[0061] For illustration purposes, Figure 1 is a schematic diagram of an analytical laboratory system that may be used in conjunction with the techniques herein. Figure 1 A specific type of laboratory analytical instrument in a specific liquid chromatography / mass spectrometry (LCMS) configuration is depicted, but one of ordinary skill in the art will appreciate that different types of chromatography devices (e.g., MS, tandem MS, etc.) may also be used in conjunction with the present disclosure.

[0062] Sample 102 is injected into liquid chromatograph 104 via injector 106. Pump 108 may pump the sample through column 110 to separate the mixture into component portions based on retention time through the column.

[0063] The output from the column is input into a mass spectrometer 112 for analysis. Initially, the sample is desolvated and ionized by a desolvation / ionization device 114. Desolvation can be any desolvation technique, including, for example, a heater, a gas, a heater in combination with a gas, or other desolvation techniques. Ionization can be performed by any ionization technique (including, for example, electrospray ionization (ESI), atmospheric pressure chemical ionization (APCI), matrix-assisted laser desorption (MALDI) or other ionization techniques). The ions produced by the ionization are sent into a collision cell 118 by a voltage gradient being applied to an ion guide 116. The collision cell 118 can be used to transfer ions (low energy) or to fragment ions (high energy).

[0064] A different technique can be used, where an alternating voltage can be applied across the collision cell 118 to induce fragmentation. Spectra are collected of the precursor at low energy (no collision) and the fragments at high energy (result of collision).

[0065] The output of the collision cell 118 is input to a mass analyzer 120. The mass analyzer 120 can be any mass analyzer, including a quadrupole, a time of flight (TOF), an ion trap, a magnetic sector mass analyzer, and a combination thereof. The detector 122 detects ions emitted from the mass analyzer 122. The detector 122 can be integrated with the mass analyzer 120. For example, in the case of a TOF mass analyzer, the detector 122 can be a microchannel plate detector that counts ion intensities (i.e., counts ions injected into it).

[0066] The raw data repository 124 can provide permanent storage for storing ion counts for analysis. For example, the raw data repository 124 can be an internal or external computer data storage device, such as a disk, flash-based memory, etc. The analysis device 126 analyzes the stored data. The data can also be analyzed in real time without being stored in the storage medium 124. In real-time analysis, the detector 122 passes the data to be analyzed directly to the analysis device 126, rather than first storing it in permanent storage.

[0067] Collision cell 118 performs fragmentation of precursor ions. Fragmentation can be used to determine the primary sequence of peptides, and then identify the origin protein. Collision cell 118 comprises gas, such as helium, argon, nitrogen, air or methane. When charged precursor interacts with gas atoms, the collision produced can fragment the precursor by decomposing the precursor into produced fragment ions. Such fragmentation can be achieved by switching the voltage in the collision cell between a low voltage state (e.g., low energy, <5V) and a high voltage state (e.g., high energy or elevated energy, >15V). High voltage and low voltage can be referred to as high energy and low energy, because high voltage or low voltage is used respectively to give kinetic energy to ions.

[0068] Various protocols may be used to determine when and how to switch voltages for such MS / MS acquisitions.After data acquisition, the resulting spectra may be extracted from the raw data repository 124 and displayed and processed by post-acquisition algorithms in the analysis device 126.

[0069] Metadata describing various parameters related to data collection may be generated with the raw data. This information may include the configuration of the liquid chromatograph 104 or mass spectrometer 112 (or other chromatographic device that collected the data), which may define the type of data. An identifier (e.g., a key) of a codec configured to decode the data may also be stored as part of the metadata and / or with the raw data. The metadata may be stored in a metadata catalog 130 in the document repository 128.

[0070] The analysis device 126 may operate according to the workflow, thereby providing the analyst with visualization of data at each of the workflow steps, and allowing the analyst to generate output data by performing processing specific to the workflow step. The workflow may be generated and retrieved via the client browser 132. As the analysis device 126 performs steps of the workflow, it may read raw data from the data stream located in the raw data repository 124. As the analysis device 126 performs steps of the workflow, it may generate processed data stored in the metadata catalog 130 in the document repository 128; alternatively or in addition, the processed data may be stored in a different location specified by the user of the analysis device 126. It may also generate audit records that may be stored in the audit log 134.

[0071] The exemplary embodiments described herein may be incorporated into the analysis device 126 (potentially in conjunction with a cloud computing device, as described in more detail below). These exemplary embodiments may also or alternatively be executed at a client browser 132 or the like. Figure 8 Examples of devices suitable for use as analysis device 126 and / or client browser 132 as well as various data storage devices are depicted.

[0072] Figure 2A An example of a mass spectrum 200 is depicted. The mass spectrum 200 represents a measurement of the number of ions detected at various locations on the detector 122; different locations correspond to different m / z values ​​202. The number of detections occurring at each location represents an intensity value 204. The ions present in the sample are typically marked by the presence of intensity peaks 206 in the mass spectrum 200 at m / z values ​​corresponding to the m / z ratios of the ions.

[0073] The taller the intensity peak 206, the more ions are recorded by the detector. Although some peaks 206 may be caused by noise or impurities, relatively tall peaks are most likely due to the presence of measurable amounts of ion fragments in the sample. For example, the depicted spectrum includes the highest intensity peak 208 having an intensity value 204 greater than the intensity value of any other peak 206. The next highest peak 210 has the second largest intensity value 204; the remaining peaks may also be arranged in order of intensity.

[0074] Typically, the raw mass spectrum 200 is processed to generate a peak list. The peak list may take the form of a table or list of key-value pairs. The peak list typically maps a specific m / z value to an intensity corresponding to the intensity value 204 of the peak detected at that m / z value. Due to the way the sample is measured, peaks are rarely represented by a single discrete quantity; instead, they typically have a shape with a tapered tail on either side of the m / z value with the maximum intensity. The peak list may include the maximum intensity and the corresponding m / z value. In some cases, the peak list may include a metric describing the shape of the peak, such as its width, the configuration of the peak tail, etc. The peak list is typically established by a peak picking algorithm that examines the mass spectrum 200 in order to isolate the peak based on the intensity and shape of the peak 206.

[0075] The mass spectrum 200 and / or peak list may be matched to predictions from an ion database. Figure 2B Depicted are examples of predicted fragment ions generated from fragmentation of a known oligonucleotide ("Oligo") sequence 250, according to an exemplary embodiment.

[0076] In this example, an oligo sequence 250 is defined by a series of structures including bases, sugars, and linkers. Each such structure is defined by an elemental composition 252, from which the monoisotopic mass 254 of the structure can be determined.

[0077] Given a particular sequence 250 having a specified elemental composition 252, fragments 256 that are expected to be produced by ionization of the sequence 250 can be determined. These fragments 256 can be established theoretically (e.g., by modeling, simulation, or deduction based on chemical principles) and / or experimentally. Each predicted fragment 256 can be associated with a predicted elemental composition 258 and a corresponding predicted mass 260. The mass 260 can be evaluated at each possible charge state of each fragment 256 to determine a set of predicted m / z values ​​for the fragment 256.

[0078] although Figure 2B A database of a particular type of oligonucleotide is represented, but one of ordinary skill in the art will recognize that the embodiments described herein are applicable to other types of ions and are not limited to the depicted examples.

[0079] Figure 3 is a data flow diagram illustrating the flow of input and output in an exemplary system.

[0080] In this example, an analytical instrument 302 (such as a mass spectrometer) analyzes a sample to produce raw instrument data 304, such as a readout of the locations of ion impacts on a detector of the instrument. The raw instrument data 304 may be provided to a cloud processor 306 (such as a server or other type of computing device), which processes the raw instrument data 304 to produce a spectrum 308 and a peak list 310 as discussed above. They may be provided as input to an analysis device 126, which may be a computer or workstation programmed with logic configured to perform isotope clustering as described herein.

[0081] The analysis device 126 may also accept as input a list of predicted fragments 314 from the ion library 312. The ion library 312 may be accessible by a user via a user interface (which may be displayed via the analysis device 126) and may allow the user to select one or more analytes of interest believed to be present in the sample. The analytes of interest may be selected based on prior knowledge or expectations about the sample.

[0082] The analysis device may process the spectrum 308 and the peak list 310 to attempt to classify the peaks according to isotope clustering logic (see FIG. 6A to FIG. 6B ) matches peaks in spectrum 308 to peaks predicted to be produced from predicted fragments 314. The logic may be configured based on one or more settings 316, which may be default settings or user-specified settings. Examples of settings that may be used to affect the operation of the logic include: minimum peak intensity, which represents an intensity threshold below which a peak in the spectrum will not be considered for matching; precursor charge, which represents the maximum charge state that the logic will search for a fragment match (a reasonable default value is 10); and mass tolerance, which represents the maximum ppm mass error allowed for any detected peak to be considered a possible match to a theoretical / predicted peak.

[0083] Based on spectrum 308, peak list 310, predicted segments 314, and settings 316, the analysis device may generate a list of matching segments 318 found in spectrum 308. FIG. 6A to FIG. 6B The process of matching fragments is described in more detail.

[0084] Figure 4Depicted is an example of a spectrum that has been matched to a predicted ion pattern, such as can be displayed to the user in an interface as a result of isotope clustering logic. In this case, the predicted ion pattern is shown by a vertical line at a specific m / z value. The solid line represents a matching peak 402, for which the peak in the spectrum is observed at an m / z value (within the tolerance represented by the mass error tolerance) at the expected intensity (within the tolerance represented by the intensity tolerance). The dotted line represents a mismatch peak 404, which does not match within the mass error tolerance or the intensity tolerance. This particular result represents (as shown on the left side of the interface) a successful attempt to match the observed spectrum to the w27 ion in a 6-charge state. Note that this match can be overwritten by selecting the "Repel Charge 6-" option in the upper right corner of the interface.

[0085] In contrast, Figure 5 Depicted are examples of spectra that have not been matched to a predicted ion pattern. As shown here, none of the predicted peaks are within the specified tolerance. This particular result represents a failed attempt to match the observed spectrum to the w27 ion in the 3-charge state.

[0086] FIG. 6A to FIG. 6B 600 is a flow chart depicting logic for performing isotope clustering according to an exemplary embodiment. The logic may be embodied as instructions stored on a computer-readable medium, which are configured to be executed by a processor. The logic may be implemented by a suitable computing system configured to perform the actions described below. Note that Fig. 6A The first stage of this logic (where detected peaks are matched based on mass) is depicted, and Figure 6B The second stage is depicted (where the peaks initially matched in the first stage are used to construct charge clusters from which isotope profiles are constructed).

[0087] Processing may begin at start block 602, which may be executed in response to a user or program requesting analysis of data from an analytical laboratory instrument to identify isotopic clusters within the data. For example, the request may appear in the form of instructions for processing data received by an analytical application associated with the analytical laboratory instrument. The data may be recent data that was processed when it was received from the instrument, or may be previously collected data stored in a database.

[0088] The logic may receive inputs at block 604. These inputs may include the spectra and peak lists previously described, as well as any settings configured to affect the operation of the isotope clustering logic (eg, settings for thresholds and / or maximum charge states).

[0089] The input may also include predicted fragments from an ion library, for example by receiving a selection of a sequence and / or precursor ion for analysis, and then looking up the sequence / precursor in the ion library to determine an associated list of fragments expected to result from ionization of the sequence / precursor.

[0090] At block 606, the system can calculate predicted isotopes from the predicted fragments received at block 604. The sequences / precursors selected at block 604 and the resulting fragments can be associated with chemical compositions, as previously discussed. The system can determine the expected isotopic pattern for each predicted fragment and / or sequence / precursor based on the respective chemical composition of each component. This can provide a predicted pattern of neutral masses, which can then be further processed based on the available charge states of the components to determine a set of predicted m / z values ​​for each possible charge state.

[0091] At block 608, the logic may proceed to a first processing stage whereby detected peaks are matched to predicted fragment isotopes based on mass. The logic may iterate through each peak identified in the peak list received at block 604 and evaluate it.

[0092] At block 610, the currently selected peak is checked against a minimum intensity threshold to determine if it will be evaluated. If the peak is not greater than the minimum intensity threshold, it is discarded and processing proceeds to block 612. If the peak is greater than the minimum intensity threshold, then at block 614, the peak is matched to a predicted isotope.

[0093] In block 614, the system may consider each isotope of each predicted fragment at each possible charge state (up to a specified maximum possible charge state). For each such isotope, the observed m / z of the peak is compared to the expected m / z of the predicted isotope. If the observed m / z value is within + / - mass tolerance of the expected m / z (as determined by a mass tolerance threshold), the isotope may be recorded in a list of possible matches.

[0094] Subsequently, processing may proceed to block 612, and the system may determine whether there are additional peaks in the peak list to be evaluated. If so, processing returns to block 608, and the next peak may be selected for consideration for evaluation. After all peaks have been evaluated, there is a complete list of every possible match between the observed peak and the predicted isotope that will pass the specified mass error criteria in the list of possible matches. Subsequently, processing may proceed to block 616.

[0095] Block 616 begins the second phase of matching, whereby charge clusters are constructed from potential matches in the list of possible matches, and ultimately an isotope profile is determined.

[0096] The next most intense peak may be selected from the peak list at block 616. The peak selected at block 616 may represent the peak with the highest intensity value that has not been considered in the second stage of matching that can be matched to at least one predicted isotope in the first stage.

[0097] It is possible that the peak matches only a single predicted isotope in the first stage (i.e., only one predicted isotope is close enough to pass the mass filter in the first stage). If so, processing can jump to block 620, and the isotope can be checked to determine whether it passes the intensity filter in the second stage. Otherwise, if more than one predicted isotope passes the mass filter in the first stage, each predicted isotope will be considered in turn. In this case, at block 618, the next isotope that is closest in mass to the selected peak can be considered.

[0098] This provides a starting point for the search and informs the logic which fragment it should try to match first (i.e., the fragment with the isotope identified in block 618, or if only one isotope matches the peak, that isotope; if more than one fragment includes the isotope identified in block 618, then one of the possible matches that includes that isotope may be selected, and the remaining possible matches may be considered in subsequent iterations of the logic). Thus, at block 620, each possible charge state of the fragment is considered in turn (up to the maximum charge state specified in the settings).

[0099] At block 622, for each fragment / charge state, the logic checks which isotope of the fragment is expected to have the greatest intensity. A list of peaks matching that isotope in the first phase may be retrieved from the list of possible matches, and these peaks may be considered in order of intensity (block 626).

[0100] By selecting predicted fragment isotopes and matching experimental peaks, an intensity expectation (as discussed above) that can be evaluated according to other adjacent peaks is established. For each peak that potentially matches each isotope, at box 628, the observed peak can be compared with the predicted match expected according to the intensity. If the peak matches within the threshold amount specified in the settings ("yes" at box 630), the process can proceed to box 632, and the peak can be added to the matching isotope profile. If it does not match ("no" at box 630), the peak can be rejected, and the system can continue to evaluate any remaining peaks that match the isotope (box 634).

[0101] Once all peaks that match the isotope have been considered, the logic may proceed to consider the remaining isotopes in the fragment (box 636). When all isotopes have been considered, the result is an isotope profile that contains clusters of peaks that can match the prediction and may contain gaps where individual peaks are rejected. At box 638, an isotope profile fit may be calculated to determine whether the cluster of accepted peaks matches the prediction within a predetermined threshold amount (box 640). If so, the cluster is saved in the final match list (box 642), and processing proceeds to box 644 (to determine if there are more charge states to be evaluated), followed by box 646 (to determine if there are more predicted isotopes that match the peak currently under consideration), followed by box 648 (to determine if there are more peaks to be considered).

[0102] After every possibility has been considered, the final match list represents a database of fragments that meet the quality, individual peak intensity fit, and cluster intensity fit criteria. In theory, it is still possible for each fragment to have more than one final charge cluster set that meets all criteria. If this is the case, then at block 650, the best fit can be selected by selecting the cluster set for each fragment that accounts for the greatest total intensity. This logic can cause the best fit to be displayed in the same Figure 4 In an interface similar to the interface shown in (and / or in Figure 5 Any rejected matches are displayed in an interface similar to the one shown).

[0103] Separately or in parallel, the logic may also identify and present any fuzzy matches (block 652). A fuzzy match may represent a peak that may plausibly match two or more segments (e.g., 7A to 7C exemplified). Sequences can often contain fragments that look identical or nearly identical (such as fragments that have similar neutral masses despite different chemical compositions, meaning that the fragments will match the same peaks in any charge state). In some cases, it may be possible to resolve an ambiguous match, in which case the match can be marked as only partially ambiguous, with the best fit still being selected and presented. In other cases, the match may not be resolved, and the match may be presented in the interface as a complete ambiguity.

[0104] The process may then proceed to block 654 where the final match list may be saved in a storage device. The process may then terminate.

[0105] although FIG. 6A to FIG. 6B Specific actions are depicted being performed in a specific order, but the embodiments are not limited to the diagrams. FIG. 6A to FIG. 6B It is contemplated that more, fewer, or different logic blocks may be implemented. Similarly, it is contemplated that FIG. 6A to FIG. 6B The actions may be performed in an order different from the order shown.

[0106] 7A to 7C An exemplary interface showing a blurred spectrum is depicted. Fig. 7A An example of an ambiguous spectrum in which two segments share similar neutral mass and composition is depicted. This represents a complete ambiguity that cannot be distinguished by the logic 600. In this case, the two predicted matches can be displayed along with a warning message that the ambiguity cannot be resolved. If the system has access to information about the relative probability of encountering each segment, this information can also be presented; if the probability of one segment is greater than the other (e.g., above a threshold difference in probability), the system can select the segment with the greater probability as the best match while still marking the other segment as a possible match. The user can then interpret the data appropriately.

[0107] Figure 7B Depicted is an example of a spectrum exhibiting fuzzy harmonics. In this case, two or more fragments have charge states that are consistent in the following manner: one of the fragments can match each nth isotope of another fragment in at least one charge state. These fuzzy matches can also be presented in the display and marked, although it is possible to resolve them (thus making them only partially blurred). For example, such fragments can sometimes be separated using isotope profiles because low-quality / low-charge ions can have profiles of different shapes from high-quality / high-charge ions. Better matches will generally have higher cluster profile scores, which explain greater intensities in the observed data.

[0108] Figure 7C An example of a spectrum that can potentially be matched to two overlapping ion patterns is depicted. In this case, the ions are not close enough in m / z to completely overlap or form harmonics, but there is some overlap between the lightest isotope of one ion and the heaviest isotope of the other. In many cases, these ions will not occupy the same space on the m / z axis, which allows them to be distinguished by mass fitting or isotope fitting. These types of matches can also be labeled as partially ambiguous.

[0109] Figure 8An example of a system architecture and data processing device that can be used to implement one or more illustrative aspects described herein in a standalone and / or networked environment is illustrated. Various network nodes such as data server 810, web server 806, computer 804, and laptop computer 802 can be interconnected via a wide area network (WAN) 808 such as the Internet. Other networks can also or alternatively be used, including a private intranet, a company network, a LAN, a metropolitan area network (MAN), a wireless network, a personal network (PAN), etc. Network 808 is for illustrative purposes and can be replaced by fewer or more computer networks. A local area network (LAN) can have one or more topologies in any known LAN topology, and can use one or more protocols in a variety of different protocols, such as Ethernet. Device data server 810, web server 806, computer 804, laptop computer 802 and other devices (not shown) can be connected to one or more networks in the network via twisted pair, coaxial cable, optical fiber, radio waves or other communication media.

[0110] The computer software, hardware, and networks may be used in a variety of different system environments, including stand-alone, networked, remote access (also known as remote desktop), virtualized, and / or cloud-based environments, among others.

[0111] The term "network" as used herein and depicted in the accompanying drawings refers not only to a system in which remote storage devices are coupled together via one or more communication paths, but also to independent devices that may be coupled to such a system from time to time having storage capabilities. Thus, the term "network" includes not only a "physical network", but also a "content network" consisting of data residing on all physical networks that can be attributed to a single entity.

[0112] Components may include a data server 810, a web server 806, a client computer 804, and a laptop computer 802. The data server 810 provides overall access, control, and management of databases and control software for performing one or more illustrative aspects described herein. The data server 810 may be connected to a web server 806, through which a user interacts with the requested data and obtains the data. Alternatively, the data server 810 itself may act as a web server and be directly connected to the Internet. The data server 810 may be connected to the web server 806 via a network 808 (e.g., the Internet), via a direct or indirect connection, or via some other network. A user may interact with the data server 810 using a remote computer 804, a laptop computer 802, such as using a web browser to connect to the data server 810 via one or more external public web sites hosted by the web server 806. The client computer 804, a laptop computer 802 may be used with the data server 810 to access data stored therein, or may be used for other purposes. For example, from a client computer 804, a user may access the web server 806 using an Internet browser (as is known in the art) or by executing a software application that communicates with the web server 806 and / or data server 810 over a computer network (such as the Internet).

[0113] The server and application can be combined on the same physical machine and retain separate virtual or logical addresses, or can reside on separate physical machines. Figure 8 Only one example of a network architecture that may be used is illustrated, and those skilled in the art will appreciate that the specific network architecture and data processing devices used may vary and are secondary to the functionality they provide, as further described herein. For example, the services provided by web server 806 and data server 810 may be combined on a single server.

[0114] Each component data server 810, web server 806, computer 804, laptop computer 802 can be any type of known computer, server or data processing device. The data server 810 may include, for example, a processor 812 that controls the overall operation of the data server 810. The data server 810 may also include a RAM 816, a ROM 818, a network interface 814, an input / output interface 820 (e.g., a keyboard, a mouse, a display, a printer, etc.) and a memory 822. The input / output interface 820 may include various interface units and drivers for reading, writing, displaying and / or printing data or files. The memory 822 may also store operating system software 824 for controlling the overall operation of the data server 810, control logic 826 for instructing the data server 810 to perform various aspects described herein, and other application software 828 that provides auxiliary, support and / or other functions that may be used in conjunction with or without the various aspects described herein. The control logic may also be referred to as data server software control logic 826 in this article. The functionality of the data server software may refer to a combination of operations or decisions made automatically based on rules encoded into the control logic, manually by a user providing input to the system, and / or automatic processing based on user input (e.g., queries, data updates, etc.).

[0115] The memory 822 may also store data for performing one or more aspects described herein, including a first database 832 and a second database 830. In some embodiments, the first database may include the second database (e.g., as a separate table, report, etc.). That is, the information may be stored in a single database, or divided into different logical, virtual or physical databases, depending on the system design. The web server 806, computer 804, laptop computer 802 may have a similar or different architecture as described with respect to the data server 810. Those skilled in the art will appreciate that the functionality of the data server 810 (or web server 806, computer 804, laptop computer 802) as described herein may be distributed across multiple data processing devices, for example, to distribute processing loads across multiple computers, to separate transactions based on geographic location, user access level, quality of service (QoS), etc.

[0116] One or more aspects may be embodied in computer-usable or readable data and / or computer-executable instructions, such as embodied in one or more program modules executed by one or more computers or other devices as described herein. Typically, program modules include routines, programs, objects, components, data structures, etc., which perform specific tasks or implement specific abstract data types when executed by a processor in a computer or other device. These modules can be written in source code programming languages, which are then compiled for execution, or these modules can be written in scripting languages ​​such as (but not limited to) HTML or XML. Computer executable instructions can be stored on computer-readable media such as non-volatile storage devices. Any suitable computer-readable storage medium can be used, including hard disks, CD-ROMs, optical storage devices, magnetic storage devices, and / or any combination thereof. In addition, various transmission (non-storage) media representing data or events as described herein can be transmitted between a source and a destination in the form of electromagnetic waves propagated by signal-conducting media (such as metal wires, optical fibers, and / or wireless transmission media). Various aspects described herein can be embodied as methods, data processing systems, or computer program products. Thus, the various functions may be embodied in whole or in part in software, firmware, and / or hardware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGAs), etc. Certain data structures may be used to more efficiently implement one or more aspects described herein, and such data structures are contemplated to be within the scope of the computer-executable instructions and computer-usable data described herein.

[0117] The components and features of the devices described above may be implemented using any combination of discrete circuits, application specific integrated circuits (ASICs), logic gates, and / or single chip architectures. In addition, where appropriate, the features of these devices may be implemented using microcontrollers, programmable logic arrays, and / or microprocessors, or any combination of the foregoing. It should be noted that hardware, firmware, and / or software elements may be collectively or individually referred to herein as "logic" or "circuitry."

[0118] It should be understood that the exemplary devices shown in the above block diagrams may represent a functional descriptive example of many possible specific implementations. Therefore, the division, omission or inclusion of block functions depicted in the drawings does not mean that the hardware components, circuits, software and / or elements used to implement these functions will necessarily be divided, omitted or included in the implementation.

[0119] At least one computer-readable storage medium may include instructions that, when executed, cause a system to perform any of the computer-implemented methods described herein.

[0120] Some embodiments may be described using the expression "one embodiment" or "an embodiment" and their derivatives. These terms mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearance of the phrase "in one embodiment" in different places in the specification does not necessarily refer to the same embodiment. In addition, unless otherwise stated, the above-mentioned features are considered to be usable together in any combination. Therefore, any features discussed separately may be used in combination with each other unless it is stated that these features are incompatible with each other.

[0121] The detailed description herein may be presented in terms of program processes executed on a computer or computer network, with general reference to the notations and nomenclature used herein. These program descriptions and representations are used by those skilled in the art to most effectively convey the substance of their work to others skilled in the art.

[0122] A process is generally considered to be a self-consistent sequence of operations that brings about a desired result. These operations are those requiring physical manipulation of physical quantities. Although not required, these quantities usually take the form of electrical, magnetic or optical signals capable of being stored, transferred, combined, compared and otherwise manipulated. In practice, it has proven convenient at times to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, etc., primarily for common reasons. It should be noted, however, that all of these and similar terms are associated with the appropriate physical quantities and are merely convenient labels applied to these quantities.

[0123] In addition, the manipulations performed are often referred to by terms such as adding or comparing, which are often associated with mental operations performed by a human operator. In any of the operations described herein that form a part of one or more embodiments, in most cases, such capabilities of a human operator are not necessary or desired. Instead, these operations are machine operations. Useful machines for performing the operations of the various embodiments include general purpose digital computers or similar devices.

[0124] The expressions "coupled" and "connected," as well as their derivatives, may be used to describe some embodiments. These terms are not necessarily intended to be synonymous with each other. For example, some embodiments may be described using the terms "connected" and / or "coupled" to indicate that two or more elements are in direct physical or electrical contact with each other. However, the term "coupled" may also mean that two or more elements are not in direct contact with each other, but still cooperate or interact with each other.

[0125] Various embodiments also relate to an apparatus or system for performing these operations. The apparatus may be specially constructed for the desired purpose, or it may include a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. The processes presented herein are not inherently related to a particular computer or other apparatus. Various general-purpose machines may be used with programs written according to the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the desired method steps. The desired structures of various of these machines will appear in the description given.

[0126] It should be emphasized that the abstract of the present disclosure is provided so as to allow the reader to quickly determine the essence of the technical disclosure. It should be understood that the submitted abstract will not be used to interpret or limit the scope or meaning of the claims. In addition, in the aforementioned detailed description, it can be seen that various features are grouped together in a single embodiment for the purpose of simplifying the present disclosure. This method of the present disclosure should not be interpreted as reflecting the intention that the claimed embodiment requires more features than the features explicitly stated in each claim. On the contrary, as reflected in the following claims, the subject matter of the present invention is less than all the features of a single disclosed embodiment. Therefore, the following claims are incorporated into the detailed description, wherein each claim exists independently as a separate embodiment. In the appended claims, the terms "including" and "in which" are used as the plain English equivalents of the corresponding terms "comprising" and "wherein", respectively. In addition, the terms "first", "second", "third", etc. are used only as labels and are not intended to impose numerical requirements on their objects.

[0127] What has been described above includes examples of the disclosed architecture. Of course, it is not possible to describe every conceivable combination of components and / or methods, but one of ordinary skill in the art may recognize that many further combinations and permutations are possible. Therefore, the novel architecture is intended to encompass all such changes, modifications, and variations that fall within the spirit and scope of the appended claims.

Claims

1. A computer-implemented method, the computer-implemented method comprising: receiving a spectrum generated by analyzing a sample using a laboratory analytical instrument, the spectrum comprising a plurality of detected peaks; receiving a list of predicted segments potentially present in the sample; matching the plurality of detected peaks to the list of predicted fragments based on a mass tolerance to generate a list of potential matches; constructing one or more charge clusters from the list of potential matches based on how closely the intensity of each potential match in the list of potential matches corresponds to an expected intensity of a corresponding predicted segment; calculating an isotope profile fit for each of the one or more charge clusters; as well as For each charge cluster of the one or more charge clusters whose isotope profile fit exceeds a predetermined profile fit threshold, the charge cluster is stored in a final matching set.

2. The method according to claim 1, further comprising: identifying a fuzzy set of detected peaks that can match two or more predicted segments; as well as The fuzzy set of detected peaks is labeled with an indication of the two or more predicted segments. 3 . The method of claim 1 , further comprising selecting a best fit from the final set of matches based on which charge cluster accounts for the greatest total intensity of the corresponding detected peak.

4. The method according to claim 1, further comprising: calculating a quality metric for at least one of the charge clusters stored in the final set of matches, the quality metric comprising one or more of an isotopic spacing mean, a median isotopic spacing, an isotopic spacing deviation, a mass error mean, a mass error median, or a mass error deviation; and The calculated quality metric is displayed on a display. The method of claim 1 , wherein the expected intensity is associated with a threshold value, the threshold value being in the range of 60% to 85%.

6. The method of claim 1, wherein a first charge cluster and a second charge cluster are matched to the same detected peak, and after the first charge cluster is matched to the detected peak, the intensity of the detected peak is ignored when matching the second charge cluster.

7. The method of claim 1, further comprising limiting a maximum charge of a precursor ion in the analysis, wherein the list of predicted fragments is limited based on the maximum charge of the precursor ion.

8. A non-transitory computer-readable storage medium comprising instructions that, when executed by a computer, cause the computer to: receiving a spectrum generated by analyzing a sample using a laboratory analytical instrument, the spectrum comprising a plurality of detected peaks; receiving a list of predicted segments potentially present in the sample; matching the plurality of detected peaks to the list of predicted fragments based on a mass tolerance to generate a list of potential matches; constructing one or more charge clusters from the list of potential matches based on how closely the intensity of each potential match in the list of potential matches corresponds to an expected intensity of a corresponding predicted segment; calculating an isotope profile fit for each of the one or more charge clusters; as well as For each charge cluster of the one or more charge clusters whose isotope profile fit exceeds a predetermined profile fit threshold, the charge cluster is stored in a final matching set.

9. The medium of claim 8 further storing instructions for: identifying a fuzzy set of detected peaks that can match two or more predicted segments; and The fuzzy set of detected peaks is labeled with an indication of the two or more predicted segments.

10. The medium of claim 8 further storing instructions for selecting a best fit from the final set of matches based on which charge cluster accounts for the greatest total intensity of the corresponding detected peak.

11. The medium of claim 8 further storing instructions for: calculating a quality metric for at least one of the charge clusters stored in the final set of matches, the quality metric comprising one or more of an isotopic spacing mean, a median isotopic spacing, an isotopic spacing deviation, a mass error mean, a mass error median, or a mass error deviation; and The calculated quality metric is displayed on a display.

12. The medium of claim 8, wherein the expected intensity is associated with a threshold value, the threshold value being in the range of 60% to 85%.

13. The medium of claim 8, wherein a first charge cluster and a second charge cluster are matched to the same detected peak, and after the first charge cluster is matched to the detected peak, an intensity of the detected peak is ignored when matching the second charge cluster.

14. The medium of claim 8 further storing instructions for: limiting a maximum charge of precursor ions in the analysis, wherein the list of predicted fragments is limited based on the maximum charge of the precursor ions.

15. A computing device, the computing device comprising: processor; and a memory storing instructions that, when executed by the processor, configure the device to: receiving a spectrum generated by analyzing a sample using a laboratory analytical instrument, the spectrum comprising a plurality of detected peaks; receiving a list of predicted segments potentially present in the sample; matching the plurality of detected peaks to the list of predicted fragments based on a mass tolerance to generate a list of potential matches; constructing one or more charge clusters from the list of potential matches based on how closely the intensity of each potential match in the list of potential matches corresponds to an expected intensity of a corresponding predicted segment; calculating an isotope profile fit for each of the one or more charge clusters; as well as For each charge cluster of the one or more charge clusters whose isotope profile fit exceeds a predetermined profile fit threshold, the charge cluster is stored in a final matching set.

16. The apparatus of claim 15, wherein the memory further stores instructions for: identifying a fuzzy set of detected peaks that can match two or more predicted segments; and The fuzzy set of detected peaks is labeled with an indication of the two or more predicted segments.

17. The apparatus of claim 15, the memory further storing instructions for selecting a best fit from the final set of matches based on which charge cluster accounts for the greatest total intensity of the corresponding detected peak.

18. The apparatus of claim 15, wherein the memory further stores instructions for: calculating a quality metric for at least one of the charge clusters stored in the final set of matches, the quality metric comprising one or more of an isotopic spacing mean, a median isotopic spacing, an isotopic spacing deviation, a mass error mean, a mass error median, or a mass error deviation; and The calculated quality metric is displayed on a display.

19. The apparatus of claim 15, wherein the expected intensity is associated with a threshold value, the threshold value being in the range of 60% to 85%.

20. The apparatus of claim 15, wherein a first charge cluster and a second charge cluster are matched to the same detected peak, and after the first charge cluster is matched to the detected peak, an intensity of the detected peak is ignored when matching the second charge cluster.