Patent Description:
For trapping-type mass analyzers, such as quadrupole ion traps and Orbitrap™ electrostatic trap mass analyzers (manufactured by Thermo Fisher Scientific of Waltham, MA), best analytical performance is often achieved when the number of ions analyzed is within a certain target range. Too few ions result in noisy spectra or the need to co-add multiple spectra, while too many ions can result in space-charge effects such as mass shifts, peak broadening, and coalescence. Beam-type instruments, such as time-of-flight (ToF) and quadrupole mass filters, also operate best when the ion flux at their detectors is within a certain range. Both trapping-type and beam-type devices may be used with intermediate ion storage traps that accumulate ions to buffer down-stream processes such as mass analysis, thereby increasing scan speed and instrument sensitivity. These ion storage traps also have limited capacities, where overfilling can lead to deleterious effects, such as mass discrimination and loss of linearity, as the amount of signal detected is no longer linear with ion accumulation time.

Automated gain control (AGC) may be performed to regulate ion population in trapping-type and beam-type devices. In the case of filling a trapping device with a target number of ions, conventional AGC may be performed by using a gate apparatus that either transmits or blocks ions. Using estimates of the ion flux, the gate is opened for a given amount of time to accumulate a target number of ions in the device, after which the gate is closed until the accumulated ions are transferred out of the device. Alternatively, and especially in the case of beam-type devices, attenuation devices or partial gates may be used to regulate the ion flux to a level that does not saturate an analyzer or detector.

In conventional AGC methods, the accumulation time to be used for acquisition of a mass spectrum is estimated based on the ion flux of a prior (most recent) acquisition. However, conventional AGC methods assume that the ion flux will remain constant for the next acquisition, and thus the conventional AGC methods fail to account for the rapidly changing nature of the ion flux (e.g., ion intensity) during LC-MS or GC-MS analyses. As a result, the conventional AGC methods may overshoot the target number of ions while the ion flux is increasing and undershoot the target number of ions while the ion flux is decreasing, both of which may degrade analytical performance. The shortcomings of conventional AGC techniques are exacerbated when the ion flux has a non-Gaussian profile in which the ion flux quickly increases from a baseline level to a peak maximum and then gradually decreases from the peak maximum back to the baseline level. In these situations, the number of ions accumulated while the ion flux is increasing may be much larger than when the ion flux has a Gaussian profile.

One method of addressing these problems uses a conventional AGC scheme while decreasing the time between analytical scans. This brute force approach offers some improvement in ion population regulation accuracy but comes at the cost of efficiency. For example, when the AGC scheme uses dedicated prescans to estimate ion flux, the time used for prescans cannot be used to acquire analytical scans. When the AGC scheme uses a prior analytical scan for ion flux estimation, the analytical scan must be repeated more often, thereby reducing the instrument capacity. Moreover, increasing the sampling rate is not entirely effective except at the limit of small numbers of analytes being assayed.

For at least these reasons, there is a need for improved methods and systems for regulating ion population in mass spectrometry. Belov Mikhail E. Et Al: "Initial implementation of external accumulation liquid chromatography/electrospray ionization Fourier transform ion cyclotron resonance with automated gain control" reports on the capability of data-dependent adjustment of ion accumulation times in the course of LC separations, further referred to as automated gain control (AGC). <CIT> discloses a method of controlling the population of ions in a mass spectrometer in which a first sample of ions is provided in the mass spectrometer, a measure of abundance of a species of interest in the first sample of ions is determined, the measure of abundance comprising an intensity value, and a second sample of ions is introduced into the mass spectrometer.

The following description presents a simplified summary of one or more aspects of the methods and systems described herein in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects of the methods and systems described herein in a simplified form as a prelude to the more detailed description that is presented below.

According to the invention, a method of performing mass spectrometry comprises: accumulating, over an accumulation time, ions produced from components eluting from a chromatography column; transferring the accumulated ions to a mass analyzer; acquiring, during an acquisition, a mass spectrum of detected ions derived from the transferred ions; obtaining, from a series of acquired mass spectra including the acquired mass spectrum and a plurality of previously-acquired mass spectra, an elution profile comprising a plurality of detection points representing intensity of the detected ions as a function of time; classifying, based on a subset of detection points included in the plurality of detection points, a current signal state of the elution profile; and setting, for a next acquisition of a mass spectrum, the accumulation time based on the classified current signal state of the elution profile.

In some illustrative embodiments, the acquiring the mass spectrum comprises performing a prescan.

In some illustrative embodiments, the acquiring the mass spectrum comprises performing tandem mass spectrometry; and the detected ions comprise product ions.

In some illustrative embodiments, the elution profile is based on a total ion current of each mass spectrum included in the series of mass spectra.

The classifying the current signal state of the elution profile comprises selecting a particular signal state from among a plurality of signal states.

In some illustrative embodiments, each signal state indicates how the intensity of the detected ions is currently changing over time.

According to the invention, the plurality of signal states consists of a baseline state, a rising state, an apex state, and a falling state.

In some illustrative embodiments, setting the accumulation time based on the classified current signal state of the elution profile comprises: determining a nominal accumulation time; identifying a correction factor associated with the classified current signal state of the elution profile; and correcting the nominal accumulation time based on the correction factor associated with the classified current signal state of the elution profile.

In some illustrative embodiments, the nominal accumulation time is determined based on a target population of ions divided by a current ion flux.

In some illustrative embodiments, the correction factor is configured to optimize a reward given by a reward policy.

In some illustrative embodiments, the correction factor is determined based at least in part on data obtained from the series of acquired mass spectra.

In some illustrative embodiments, the current signal state of the elution profile is classified based on a relative position of a selected detection point included in the plurality of detection points, the relative position of the selected detection point representing a position of the selected detection point relative to an expected reference point in the elution profile.

In some illustrative embodiments, the selected detection point is a most-recent detection point.

In some illustrative embodiments, the relative position of the selected detection point comprises a normalized intensity value of the selected detection point, the normalized intensity value representing a ratio of the detected intensity value of the selected detection point to an expected maximum intensity value of the elution profile.

In some illustrative embodiments, the relative position of the selected detection point comprises a temporal distance of the selected detection point to an expected time point in the elution profile.

In some illustrative embodiments, the classifying the current signal state of the elution profile comprises applying the subset of detection points to a trained machine learning model configured to estimate the relative position of the selected detection point based on the subset of detection points.

In some illustrative embodiments, the machine learning model is trained based at least in part on the plurality of detection points of the elution profile.

According to the invention, an apparatus for performing mass spectrometry, comprises: an ion accumulator configured to accumulate, over an accumulation time, ions produced from components eluting from a chromatography column; a mass analyzer configured to acquire, during an acquisition, a series of mass spectra of detected ions derived from the accumulated ions after the accumulated ions are transferred from the ion accumulator; and a computing device configured to: obtain, from the series of mass spectra including the acquired mass spectrum and a plurality of previously-acquired mass spectra, an elution profile comprising a plurality of detection points representing intensity of the detected ions as a function of time; classify, based on a subset of detection points included in the plurality of detection points, a current signal state of the elution profile; and set, for a next acquisition of a mass spectrum, the accumulation time based on the classified current signal state of the elution profile.

In some illustrative embodiments, a method comprises: obtaining, from a series of mass spectra including a most recent mass spectrum and a plurality of previously-acquired mass spectra, an elution profile comprising a plurality of detection points each representing intensity of ions accumulated over an accumulation time and detected by a detector as a function of time; classifying, based on a subset of detection points included in the plurality of detection points, a current signal state of the elution profile; and setting, for a next acquisition of a mass spectrum, the accumulation time based on the classified current signal state of the elution profile.

In some illustrative embodiments, a method of performing mass spectrometry comprises: acquiring a mass spectrum of ions accumulated over an accumulation time; and setting, for a next acquisition of a mass spectrum, the accumulation time based on a series of mass spectra including the mass spectrum and a plurality of previously-acquired mass spectra.

Methods and systems for performing ion population regulation in mass spectrometry are described herein. A method of performing ion population regulation includes accumulating, over an accumulation time, ions produced from components eluting from a chromatography column and transferring the accumulated ions to a mass analyzer. During an acquisition, a mass spectrum of ions derived from the transferred ions and detected by a detector is acquired. An elution profile comprising a plurality of detection points representing intensity of the detected ions as a function of time is obtained from a series of acquired mass spectra including the acquired mass spectrum and a plurality of previously-acquired mass spectra. Based on a subset of detection points included in the plurality of detection points, a current signal state of the elution profile is classified, and the accumulation time is set, based on the classified current signal state of the elution profile, for a next acquisition of a mass spectrum.

Various embodiments will now be described in more detail with reference to the figures. The systems and methods described herein may provide one or more of the benefits mentioned above and/or various additional and/or alternative benefits that will be made apparent herein.

In some implementations, the methods and systems for performing ion population regulation may be used in conjunction with a combined separation-mass spectrometry system, such as an LC-MS system. As such, an LC-MS system will now be described. The described LC-MS system is illustrative and not limiting. The methods and systems described herein may operate as part of or in conjunction with the LC-MS system described herein and/or with any other suitable separation-mass spectrometry system, including a high-performance liquid chromatography-mass spectrometry (HPLC-MS) system, a gas chromatography-mass spectrometry (GC-MS) system, or a capillary electrophoresis-mass spectrometry (CE-MS) system. The methods and systems described herein may also operate in conjunction with any other continuous flow sample source, such as a flow-injection MS system (FI-MS) in which analytes are injected into a mobile phase (without separation in a column) and enter the mass spectrometer with time-dependent variations in intensity (e.g., Gaussian-like peaks).

<FIG> shows an illustrative LC-MS system <NUM>. LC-MS system <NUM> includes a liquid chromatograph <NUM>, a mass spectrometer <NUM>, and a controller <NUM>. Liquid chromatograph <NUM> is configured to separate, over time, components (e.g., analytes) within a sample <NUM> that is injected into liquid chromatograph <NUM>. Sample <NUM> may include, for example, chemical components (e.g., molecules, ions, etc.) and/or biological components (e.g., metabolites, proteins, lipids, etc.) for detection and analysis by LC-MS system <NUM>. Liquid chromatograph <NUM> may be implemented by any liquid chromatograph as may suit a particular implementation. In liquid chromatograph <NUM>, sample <NUM> may be injected into a mobile phase (e.g., a solvent), which carries sample <NUM> through a column <NUM> containing a stationary phase (e.g., an adsorbent packing material). As the mobile phase passes through column <NUM>, components within sample <NUM> elute from column <NUM> at different times based on, for example, their size, their affinity to the stationary phase, their polarity, and/or their hydrophobicity.

A detector (e.g., an ion detector component of mass spectrometer <NUM>, an ion-electron converter and electron multiplier, etc.) may measure the relative intensity of a signal modulated by each separated component in eluate <NUM> from column <NUM>. Data generated by the detector may be represented as a chromatogram, which plots retention time on the x-axis and a signal representative of the relative intensity on the y-axis. The retention time of a component is generally measured as the period of time between injection of sample <NUM> into the mobile phase and the relative intensity peak maximum after chromatographic separation. In some examples, the relative intensity may be correlated to or representative of relative abundance of the separated components. Data generated by liquid chromatograph <NUM> may be output to controller <NUM>.

In some cases, particularly in analyses of complex mixtures, multiple different components in sample <NUM> may co-elute from column <NUM> at approximately the same time, and thus may have the same or similar retention times. As a result, determination of the relative intensity of the individual components within sample <NUM> requires further separation of signals attributable to the individual components. To this end, liquid chromatograph <NUM> directs components included in eluate <NUM> to mass spectrometer <NUM> for identification and/or quantification of one or more of the components.

Mass spectrometer <NUM> is configured to produce ions from the components received from liquid chromatograph <NUM> and sort or separate the produced ions based on m/z of the ions. A detector in mass spectrometer <NUM> measures the intensity of the signal produced by the ions. As used herein, "intensity" or "signal intensity" may refer to any suitable metric, such as abundance, relative abundance, ion count, intensity, or relative intensity. Data generated by the detector may be represented by mass spectra, which plot the intensity of the observed signal as a function of m/z of the detected ions. Data acquired by mass spectrometer <NUM> may be output to controller <NUM>.

Mass spectrometer <NUM> may be implemented by any suitable mass spectrometer. <FIG> shows a functional diagram of an illustrative implementation 200A of mass spectrometer <NUM>. As shown, mass spectrometer <NUM> includes an ion source <NUM>, an ion accumulator <NUM>, a mass analyzer <NUM>, a detector <NUM>, and a controller <NUM>. Mass spectrometer <NUM> may further include any additional or alternative components not shown as may suit a particular implementation (e.g., ion optics, filters, ion storage devices, ion mobility analyzers, etc.).

Ion source <NUM> is configured to produce a stream of ions <NUM> from the components eluting from liquid chromatograph <NUM> and deliver ion stream <NUM> to ion accumulator <NUM>. Ion source <NUM> may use any suitable ionization technique, including without limitation electron ionization, chemical ionization, matrix assisted laser desorption/ionization, electrospray ionization, atmospheric pressure chemical ionization, atmospheric pressure photoionization, inductively coupled plasma, and the like. Ion source <NUM> may include various components for producing ions from components included in sample <NUM> and delivering the ions to ion accumulator <NUM>.

Ion accumulator <NUM> is a device configured to accumulate, over an accumulation time, ions included in ion stream <NUM>. In some examples, ion accumulator <NUM> is an ion storage device configured to buffer down-stream processes, such as mass analysis, thereby increasing scan speed and instrument sensitivity. In some examples, ion accumulator <NUM> is a trapping device, such as a linear quadrupole ion trap, a three-dimensional quadrupole ion trap, a cylindrical ion trap, a toroidal ion trap, an orbital electrostatic trap, a Kingdon trap, and the like. The accumulation of ions in ion accumulator <NUM> may be regulated with the aim to achieve a target number of ions in ion accumulator <NUM>. Regulation of the accumulation of ions in ion accumulator <NUM> may be performed by a gate apparatus (not shown) that either transmits or blocks ion stream <NUM>. Using estimates of the ion flux of ion stream <NUM> (e.g., quantity of ions (as measured by intensity) per unit time), as will be described below in more detail, the gate may be opened for a given amount of time to meter the appropriate number of ions, after which the gate is closed. The accumulated ions may then be transferred as ion stream <NUM> from ion accumulator <NUM> to mass analyzer <NUM>.

Mass analyzer <NUM> is configured to separate ions in ion stream <NUM> according to m/z of each of the ions to filter and/or perform a mass analysis of the ions and frequently provide an ion stream <NUM> to detector <NUM>. Mass analyzer <NUM> may be implemented by any suitable beam-type or trapping-type mass analyzer, such as a quadrupole mass filter, an ion trap (e.g., a linear quadrupole ion trap, a three-dimensional quadrupole ion trap, a cylindrical ion trap, a toroidal ion trap, etc.), a time-of-flight (TOF) mass analyzer, an electrostatic trap mass analyzer (e.g. an orbital electrostatic trap such as an Orbitrap mass analyzer, a Kingdon trap, etc.), a Fourier transform ion cyclotron resonance (FT-ICR) mass analyzer, a sector mass analyzer, and the like.

In some examples, mass spectrometer <NUM> is a tandem mass spectrometer (tandem-in-time or tandem-in-space) configured to perform tandem mass spectrometry (e.g., MS/MS), a multi-stage mass spectrometer configured to perform multi-stage mass spectrometry (also denoted MSn), or a hybrid mass spectrometer. For example, mass analyzer <NUM> may include multiple mass analyzers, mass filters, and/or collision cells. The term "collision cell," as used herein, may include any structure arranged to produce product ions via controlled dissociation processes or ion-ion reaction processes and is not limited to devices employed for collisionally-activated dissociation. For example, a collision cell may be configured to fragment the ions using collision induced dissociation (CID), electron transfer dissociation (ETD), electron capture dissociation (ECD), photo induced dissociation (PID), surface induced dissociation (SID), and the like. A collision cell may be positioned upstream from a mass filter, which separates the fragmented ions based on the ratio of mass to charge of the ions. In some embodiments, mass analyzer <NUM> may include a combination of multiple mass filters and/or collision cells, such as a triple quadrupole mass analyzer, where a collision cell is interposed in the ion path between independently operable mass filters.

While <FIG> shows that ion accumulator <NUM> is positioned upstream from mass analyzer <NUM>, ion accumulator <NUM> may be positioned at any other location along an ion path from ion source <NUM> to detector <NUM> within a tandem mass spectrometer or multi-stage mass spectrometer (e.g., between a first mass filter (Q1) and a collision cell (Q2) and/or between a collision cell (Q2) and a second mass filter (Q3)). Additionally, mass spectrometer <NUM> may include more than one ion accumulator <NUM>, such as when mass spectrometer <NUM> is a tandem mass spectrometer or multi-stage mass spectrometer.

Ion detector <NUM> is configured to detect ions either within the mass analyzer <NUM> or in ion stream <NUM> from the mass analyzer <NUM> at each of a variety of different m/z and responsively generate an electrical signal representative of ion intensity. The electrical signal is transmitted to controller <NUM> for processing, such as to construct a mass spectrum of the detected ions. For example, mass analyzer <NUM> may emit an emission beam of separated ions to detector <NUM>, which is configured to detect the ions in the emission beam and generate or provide data that can be used by controller <NUM> to construct a mass spectrum. Ion detector <NUM> may be implemented by any suitable detection device, including without limitation an electron multiplier, a Faraday cup, and the like.

Controller <NUM> may be communicatively coupled with, and configured to control various operations of, mass spectrometer <NUM>. For example, controller <NUM> may be configured to control operation of various hardware components included in ion source <NUM>, ion accumulator <NUM>, mass analyzer <NUM>, and/or detector <NUM>. To illustrate, controller <NUM> may be configured to control an accumulation time of ion accumulator <NUM> and/or mass analyzer <NUM>, control an oscillatory voltage power supply and/or a DC power supply to supply an RF voltage and/or a DC voltage to mass analyzer <NUM>, adjust values of the RF voltage and DC voltage to select an effective m/z (including a mass tolerance window) for analysis, and adjust the sensitivity of ion detector <NUM> (e.g., by adjusting the detector gain).

Controller <NUM> may also include and/or provide a user interface configured to enable interaction between a user of mass spectrometer <NUM> and controller <NUM>. The user may interact with controller <NUM> via the user interface by tactile, visual, auditory, and/or other sensory type communication. For example, the user interface may include a display device (e.g., liquid crystal display (LCD) display screen, a touch screen, etc.) for displaying information (e.g., mass spectra, notifications, etc.) to the user. The user interface may also include an input device (e.g., a keyboard, a mouse, a touchscreen device, etc.) that allows the user to provide input to controller <NUM>. In other examples the display device and/or input device may be separate from, but communicatively coupled to, controller <NUM>. For instance, the display device and the input device may be included in a computer (e.g., a desktop computer, a laptop computer, a mobile device, etc.) communicatively connected to controller <NUM> by way of a wired connection (e.g., by one or more cables) and/or a wireless connection (e.g., Wi-Fi, Bluetooth, near-field communication, etc.).

Controller <NUM> may include any suitable hardware (e.g., a processor, circuitry, etc.) and/or software as may serve a particular implementation. While <FIG> shows that controller <NUM> is included in mass spectrometer <NUM>, controller <NUM> may alternatively be implemented in whole or in part separately from mass spectrometer <NUM>, such as by a computing device communicatively coupled to mass spectrometer <NUM> by way of a wired connection (e.g., a cable) and/or a network (e.g., a local area network, a wireless network (e.g., Wi-Fi), a wide area network, the Internet, a cellular data network, etc.). In some examples, controller <NUM> may be implemented in whole or in part by controller <NUM> (and vice versa).

<FIG> shows a functional diagram of another illustrative implementation 200B of mass spectrometer <NUM>. Implementation 200B is similar to implementation 200A except that, in implementation 200B, mass analyzer <NUM> is a trapping-type mass analyzer and ion accumulator <NUM> and ion stream <NUM> from ion accumulator <NUM> are omitted. Ions are accumulated in mass analyzer <NUM> over an accumulation time to achieve a target number of ions in mass analyzer <NUM>.

Referring again to <FIG>, controller <NUM> may be communicatively coupled with, and configured to control operations of, LC-MS system <NUM> (e.g., liquid chromatograph <NUM> and/or mass spectrometer <NUM>). Controller <NUM> may include any suitable hardware (e.g., a processor, circuitry, etc.) and/or software configured to control operations of and/or interface with the various components of LC-MS system <NUM> (e.g., liquid chromatograph <NUM> and/or mass spectrometer <NUM>).

For example, controller <NUM> may be configured to acquire data acquired over time by liquid chromatograph <NUM> and mass spectrometer <NUM>. The data may include a series of mass spectra including intensity values of ions produced from the components of sample <NUM> as a function of m/z of the ions. The data may be represented in a three-dimensional map in which time (e.g., retention time) is plotted along an x-axis, m/z is plotted along a y-axis, and intensity is plotted along a z-axis. Spectral features on the map (e.g., peaks of intensity) represent detection by LC-MS system <NUM> of ions produced from various components included in sample <NUM>. The x-axis and z-axis of the map may be used to generate a mass chromatogram that plots intensity as a function of time for a selected m/z (e.g., an extracted ion chromatogram (XIC)) or for a full m/z spectrum (e.g., a total ion current (TIC)). As used herein, a "selected m/z" may include a specific m/z with or without a mass tolerance window or a narrow range of m/z. The y-axis and z-axis of the map may be used to generate mass spectra, each mass spectrum plotting intensity as a function of m/z for a particular acquisition (e.g., for each MS scan or MS/MS scan).

<FIG> shows a portion of an illustrative mass chromatogram <NUM> (e.g., a TIC) of ions derived from components included in sample <NUM> and that elute from liquid chromatograph <NUM>. Mass chromatogram <NUM> is generated from data acquired by mass spectrometer <NUM>, such as a plurality of survey acquisitions (e.g., MS full-spectrum prescans) or analytical acquisitions (e.g., MS or MS/MS scans). Mass chromatogram <NUM> plots intensity (arbitrary units) as a function of retention time (in minutes). As shown, mass chromatogram <NUM> includes a plurality of detection points, each acquired from a different acquisition, that together form an elution profile <NUM> of the component (as indicated by the dashed line curve). As the components elute from column <NUM>, the detected intensity of the ions produces a peak <NUM> having a roughly Gaussian profile. However, peak <NUM> and/or other peaks (not shown) in elution profile <NUM> may have other, non-Gaussian profiles.

Conventional AGC methods for regulating ion population in an ion storage device or mass analyzer assume that the ion flux (quantity (e.g., intensity) of ions per unit time) will remain constant for the next acquisition and thus set the accumulation time based on the ion flux of the prior acquisition. However, as shown in <FIG> the ion flux during an LC-MS experiment is not constant but is dynamic and, at times, fast-changing as the components elute from the column. Hence, the conventional AGC methods overshoot the accumulation time during which ions are accumulated (and, hence, overshoot the target number of ions) while the peak intensity is increasing and undershoot the accumulation time (and, hence, undershoot the target number of ions) while the peak intensity is decreasing.

An improved method of regulating ion population accounts for the dynamic and fast-changing nature of the ion flux by classifying a current signal state of the ion signal in the elution profile based on a set of historic detection points (e.g., a set of most recent detection points) and setting the accumulation time for the next acquisition based on the current signal state of the ion signal of the elution profile. For example, a nominal accumulation time tnom for a next acquisition may be determined as the target number of ions to be accumulated divided by the ion flux of the prior acquisition. The accumulation time taccum for the next acquisition may then be set by correcting the nominal accumulation time tnom with a correction factor that is associated with the current signal state of the ion signal in the elution profile. For instance, when the current signal state is a rising state (e.g., the ion intensity is increasing), the correction factor decreases the accumulation time taccum as compared with the nominal accumulation time tnom to prevent overshooting the target number of ions. When the current signal state is a falling state (e.g., the ion intensity is decreasing), the correction factor may increase the accumulation time taccum as compared with the nominal accumulation time tnom to prevent undershooting the target number of ions. These and other illustrative methods and systems for regulating ion population will be described in more detail below.

One or more operations associated with improved methods of ion population regulation may be performed by a mass spectrometry control system. <FIG> shows an illustrative mass spectrometry control system <NUM> ("system <NUM>"). System <NUM> may be implemented entirely or in part by LC-MS system <NUM> (e.g., by controller <NUM> and/or controller <NUM>). Alternatively, system <NUM> may be implemented separately from LC-MS system <NUM>.

System <NUM> may include, without limitation, a storage facility <NUM> and a processing facility <NUM> selectively and communicatively coupled to one another. Facilities <NUM> and <NUM> may each include or be implemented by hardware and/or software components (e.g., processors, memories, communication interfaces, instructions stored in memory for execution by the processors, etc.). In some examples, facilities <NUM> and <NUM> may be distributed between multiple devices and/or multiple locations as may serve a particular implementation.

Storage facility <NUM> may maintain (e.g., store) executable data used by processing facility <NUM> to perform any of the operations described herein. For example, storage facility <NUM> may store instructions <NUM> that may be executed by processing facility <NUM> to perform any of the operations described herein. Instructions <NUM> may be implemented by any suitable application, software, code, and/or other executable data instance.

Storage facility <NUM> may also maintain any data acquired, received, generated, managed, used, and/or transmitted by processing facility <NUM>. For example, storage facility <NUM> may maintain LC-MS data (e.g., acquired chromatogram data and/or mass spectra data) and/or classification data. Classification data may include data representative of, used by, or associated with one or more models (e.g., machine learning models) or algorithms maintained by processing facility <NUM> for classifying a current signal state of an ion signal in an elution profile.

Processing facility <NUM> may be configured to perform (e.g., execute instructions <NUM> stored in storage facility <NUM> to perform) various processing operations described herein. It will be recognized that the operations and examples described herein are merely illustrative of the many different types of operations that may be performed by processing facility <NUM>. In the description herein, any references to operations performed by system <NUM> may be understood to be performed by processing facility <NUM> of system <NUM>. Furthermore, in the description herein, any operations performed by system <NUM> may be understood to include system <NUM> directing or instructing another system or device to perform the operations.

<FIG> shows an illustrative method of ion population regulation for mass spectrometry. While <FIG> shows illustrative operations according to one embodiment, other embodiments may omit, add to, reorder, and/or modify any of the operations shown in <FIG>. One or more of the operations shown in <FIG> may be performed by LC-MS system <NUM> and/or system <NUM>, any components included therein, and/or any implementations thereof.

In operation <NUM>, ions produced from the sample components eluting from column <NUM> are accumulated over an accumulation time taccum. The ions may be accumulated in any device, such as ion accumulator <NUM> or mass analyzer <NUM> (e.g., a trapping-type device). The accumulation time taccum may be initially set to a default or baseline accumulation time tbase configured to produce a target population of accumulated ions. The target population of accumulated ions may be based, for example, on characteristics of ion accumulator <NUM>, mass analyzer <NUM>, and/or detector <NUM>, such as storage space charge capacity and/or spectral space charge capacity.

In some examples, the initial value of accumulation time taccum may be set manually by a user (e.g., by way of controller <NUM> or controller <NUM>). In further examples, the initial value of accumulation time taccum may be set automatically by system <NUM>, such as based on a default value, based on method parameters for the particular method or assay, based on characteristics of ion accumulator <NUM>, mass analyzer <NUM> or detector <NUM>, and/or based on information provided by the user (e.g., based on a number of target analytes, etc.). The initial value of accumulation time taccum may be set so as to prevent overshooting and undershooting the target number of ions.

In operation <NUM>, a mass spectrum of ions derived from the accumulated ions is acquired. Operation <NUM> may be acquired in any suitable way. For example, if the ions are accumulated in ion accumulator <NUM>, the accumulated ions are transferred to mass analyzer <NUM>, which performs a mass analysis of the accumulated ions, such as a full-spectrum MS scan, or an MS/MS prescan or analytical scan in which the detected ions are product ions. If the ions are accumulated in a trapping-type mass analyzer, the mass analyzer performs a mass analysis of the accumulated ions. The mass spectrum is then stored (e.g., in storage facility <NUM>) with a series of mass spectra <NUM> previously acquired and stored during the experiment. If the mass spectrum is the first mass spectrum acquired during the experiment, the mass spectrum is stored, and subsequently-acquired mass spectra may be combined with the mass spectrum to produce series of mass spectra <NUM>.

In operation <NUM>, system <NUM> obtains, from mass spectra <NUM>, an elution profile comprising a plurality of detection points each from a different acquisition and representing intensity of the ions, as detected by mass spectrometer <NUM>, as a function of time. As mentioned, the intensity value of each detection point may represent the total ion current for the corresponding mass spectrum included in mass spectra <NUM> as a function of time.

In operation <NUM>, system <NUM> determines whether an accumulation time setting condition is satisfied. The accumulation time setting condition ensures that there is sufficient data for system <NUM> to set the accumulation time based on a subset of detection points included in the elution profile. In some examples, the accumulation time setting condition comprises a determination that a minimum or predetermined number of detection points have been acquired (e.g., <NUM>, <NUM>, <NUM>, <NUM>, etc.).

In alternative examples, the accumulation time setting condition comprises a determination that a minimum amount of time has elapsed since a reference time. The reference time may be, for example, a time of a first acquisition, a time at which sample <NUM> was injected to liquid chromatograph <NUM>, or a time when instrument conditions or method parameters changed. In some examples, system <NUM> may determine whether the time elapsed since the reference time is greater than or equal to a sliding time window size. The sliding time window may encompass, for example, a period of <NUM> seconds, <NUM> seconds, <NUM> seconds, etc..

If the accumulation time setting condition is not satisfied, the processing of method <NUM> returns to operation <NUM> for another acquisition. If, however, the accumulation time setting condition is satisfied, the processing of method <NUM> proceeds to operation <NUM>.

In operation <NUM>, system <NUM> classifies, based on a subset of detection points included in the plurality of detection points of the elution profile and based on a signal state model <NUM>, a current signal state of the ion signal of the elution profile. The signal state indicates how the intensity signal is currently changing over time at a detection point selected by system <NUM> (e.g., a most recent detection point). For example, the signal state may be a baseline state that indicates little to no change in detected intensity, a rising state that indicates that the detected intensity is increasing toward an estimated or predicted apex of a peak in the elution profile, an apex state in which the detected intensity is near the peak apex, or a falling state that indicates that the detected intensity is decreasing from the peak apex toward a baseline value. In some examples, the current signal state of the ion signal may be classified by selecting a particular signal state from among a plurality of signal states (a baseline state, a rising state, an apex state, and a falling state) based on the estimated position of the selected detection point (e.g., a most recent detection point) relative to an expected reference point (e.g., an estimated or predicted peak apex). Illustrative embodiments of operation <NUM> will be described in more detail below.

In operation <NUM>, system <NUM> sets the accumulation time taccum based on the current signal state classified in operation <NUM>. For example, system <NUM> may determine a nominal accumulation time tnom based on the ion flux of the selected detection point (e.g., the most recent detection point) and then correct the nominal accumulation time tnom with a correction factor associated with the current signal state to obtain the accumulation time taccum. Illustrative embodiments of operation <NUM> will be described in more detail below.

After operation <NUM>, the processing of method <NUM> returns to operation <NUM> for another acquisition with the accumulation time taccum previously set in operation <NUM>. Method <NUM> may continue until it is automatically or manually terminated.

Illustrative embodiments of performing operation <NUM> will now be described with reference to <FIG>, which shows an illustrative TIC <NUM> that may be generated from, or is representative of, series of mass spectra <NUM>, and <FIG>, which shows TIC <NUM> after data from two additional acquisitions have been added to TIC <NUM>. TIC <NUM> will facilitate description of operation <NUM>, but operation <NUM> may be performed with raw source data without generating TIC <NUM>.

TIC <NUM> plots a plurality of detection points <NUM> each representing a detected intensity value (arbitrary units), as detected by mass spectrometer <NUM> during a prescan or analytical acquisition, as a function of retention time (in minutes). Each successive mass spectrum acquisition by mass spectrometer <NUM> adds a new detection point <NUM> to TIC <NUM>. As shown on TIC <NUM>, the right-most detection point <NUM>-<NUM> is a current (most-recent) detection point <NUM> acquired at current time tc and having a current intensity value Ic, as indicated by dashed line <NUM>. As shown in <FIG>, detection points <NUM> together form an elution profile of the components eluting from column <NUM>. The upward trajectory of intensity values of detection points <NUM> indicates the start of a peak <NUM> in the expected (e.g., estimated or predicted) elution profile. In <FIG>, the expected elution profile is represented by a dashed-line curve.

<FIG> shows an illustrative method <NUM> of classifying the current signal state of the ion signal of the elution profile of <FIG> or <FIG> (e.g., operation <NUM>). While <FIG> shows illustrative operations according to one embodiment, other embodiments may omit, add to, reorder, and/or modify any of the operations shown in <FIG>. One or more of the operations shown in <FIG> may be performed by LC-MS system <NUM> and/or system <NUM>, any components included therein, and/or any implementations thereof.

In operation <NUM>, system <NUM> selects a particular detection point <NUM> in the elution profile. In the example described herein, the selected detection point <NUM> is the current detection point <NUM>-<NUM>. In alternative examples, the selected detection point may be any historical detection point <NUM> acquired during the procedure (e.g., any detection point <NUM> acquired prior to current time tc, such as a second or third most-recent detection point <NUM>), or the selected detection point may be a combination (e.g., an average) of multiple historical detection points.

In operation <NUM>, system <NUM> estimates a relative position of selected detection point <NUM>-<NUM> relative to a reference point in the elution profile. Estimation of the relative position of selected detection point <NUM>-<NUM> is based on the principle that the relative position of selected detection point <NUM>-<NUM> is a function of detected intensity values of a plurality of detection points <NUM> around (e.g., preceding and/or following) selected detection point <NUM>-<NUM>. Thus, the position of selected detection point <NUM>-<NUM> relative to the reference point (e.g., the expected or predicted apex <NUM>) of peak <NUM> may be estimated in real-time and used to identify the current signal state of the ion signal in the elution profile.

In some examples, the relative position of selected detection point <NUM>-<NUM> relative to a reference point is a normalized intensity value of selected detection point <NUM>-<NUM> relative to a reference intensity value. As shown in <FIG> and <FIG>, the reference intensity value may be, for example, an expected maximum intensity value Imax at an apex <NUM> of peak <NUM>, as indicated by dashed line <NUM>. However, since the maximum intensity value Imax of peak <NUM> has not yet been detected at current time tc, intensity values for a distinct set <NUM> of a plurality of detection points <NUM> are applied as inputs to signal state model <NUM>, which is configured to estimate the normalized intensity value of the selected detection point <NUM>-<NUM>.

In some examples, set <NUM> comprises a predetermined number (e.g., <NUM>, <NUM>, <NUM>, <NUM>, etc.) of detection points <NUM>. In alternative examples, set <NUM> comprises only the detection points <NUM> that occur within a sliding time window. For example, the sliding time window may encompass a period of <NUM> seconds, <NUM> seconds, <NUM> seconds, etc. In either configuration, the selected detection point <NUM> is included in the set <NUM>. If detection points <NUM> are not evenly spaced along the time axis, detection points <NUM> may be corrected (such as by interpolation) to a fixed and uniform time spacing (e.g., <NUM> second) to simplify processing.

Signal state model <NUM> is configured to use set <NUM> as an input to perform any suitable heuristic, process, and/or operation that may be performed or executed by system <NUM> to estimate a normalized intensity value of the selected detection point <NUM>-<NUM>. In some examples, signal state model <NUM> may be implemented by hardware and/or software components (e.g., processors, memories, communication interfaces, instructions stored in memory for execution by the processors, etc.), such as storage facility <NUM> and/or processing facility <NUM> of system <NUM>. Signal state model <NUM> may include any suitable algorithm and/or machine learning model configured to estimate a normalized intensity value of a selected detection point based on intensity values for a set of historical detection points (e.g., set <NUM>). Signal state model <NUM> may estimate the normalized intensity value in any suitable way. In some examples, signal state model <NUM> comprises a machine learning model. An illustrative machine learning model, and methods of training the machine learning model, will be described below in more detail.

When the reference intensity value is the expected maximum intensity value Imax at apex <NUM> of peak <NUM>, the normalized intensity value of selected detection point <NUM>-<NUM> will generally range from <NUM> to <NUM>. In the example of <FIG>, system <NUM> estimates the current normalized intensity value of selected detection point <NUM>-<NUM> to be about <NUM>, thus indicating that the current normalized intensity value Ic of selected detection point <NUM>-<NUM> is about <NUM>% of the expected intensity value Imax at apex <NUM>. In the example of <FIG>, system <NUM> estimates the current normalized intensity value Ic of the current detection point <NUM>-<NUM> to be about <NUM>.

In the examples described above, the reference intensity value is the expected maximum intensity value Imax at apex <NUM> of peak <NUM>. However, any other normalization scheme may be used, and the reference intensity value may be any other suitable reference value, such as a known running average intensity value, a global maximum intensity value for multiple different m/z, or a recent maximum intensity value.

In the examples just described, the relative position of selected detection point <NUM>-<NUM> is the normalized intensity value of selected detection point <NUM>-<NUM> relative to a reference intensity value. In other examples, the relative position of selected detection point <NUM>-<NUM> is a temporal distance of selected detection point <NUM>-<NUM> relative to a temporal reference point. For example, as shown in <FIG> and <FIG>, the temporal reference point may occur at an expected time tmax at which the intensity value of peak <NUM> is expected to reach maximum intensity value Imax at apex <NUM>. System <NUM> may estimate the temporal distance (e.g., a difference between tmax and tc) of selected detection point <NUM>-<NUM> to the reference point in any suitable way.

In some examples, the temporal distance is estimated in a manner similar to estimating the normalized intensity value of selected detection point <NUM>-<NUM>. For example, set <NUM> of detection points <NUM> and/or the estimated normalized intensity values are applied as inputs to signal state model <NUM>, which is additionally or alternatively configured to estimate expected time tmax based on a set of historical detection points. As shown in <FIG>, system <NUM> may estimate, based on set <NUM>, a temporal distance of selected detection point <NUM>-<NUM> to be <NUM> minutes (e.g., <NUM> seconds). As shown in <FIG>, system <NUM> may estimate, based on set <NUM>, the temporal distance of selected detection point <NUM>-<NUM> to be <NUM> minutes (e.g., <NUM> seconds).

Referring again to <FIG>, in operation <NUM> system <NUM> identifies a signal state that is associated with the estimated relative position of selected detection point <NUM>-<NUM>. Operation <NUM> may be performed in any suitable way. In some examples, system <NUM> may select, based on the relative position of selected detection point <NUM>-<NUM> estimated in operation <NUM>, a particular signal state from among a plurality of signal states.

For example, a current signal state of an elution profile may have one of a plurality of distinct signal states. <FIG> shows an illustrative division of the elution profile of TIC <NUM> shown in <FIG> into a plurality of distinct signal state regions <NUM> (e.g., signal state regions <NUM>-<NUM> through <NUM>-<NUM>) based on normalized intensity values relative to a reference intensity point in the elution profile (e.g., apex <NUM>). For example, a baseline region <NUM>-<NUM> is located below a first threshold normalized intensity value <NUM>-<NUM> (e.g., <NUM>) both before and after detection of apex <NUM>. A rising region <NUM>-<NUM> is located between first threshold normalized intensity value <NUM>-<NUM> and a second threshold normalized intensity value <NUM>-<NUM> (e.g., <NUM>) and prior to detection of apex <NUM>. An apex region <NUM>-<NUM> is located above the second threshold normalized intensity value <NUM>-<NUM> and both before and after detection of apex <NUM>. A falling region <NUM>-<NUM> is located between second threshold normalized intensity value <NUM>-<NUM> and first threshold normalized intensity value <NUM>-<NUM> and after detection of apex <NUM>. For example, rising region <NUM>-<NUM> and falling region <NUM>-<NUM> may be based on different threshold normalized intensity values. Although not part of the claimed subject-matter, more or fewer than four signal state regions may be used (e.g., baseline region <NUM>-<NUM>, rising region <NUM>-<NUM>, apex region <NUM>-<NUM>, and/or falling region <NUM>-<NUM> may each be divided into multiple different regions).

System <NUM> may identify a signal state associated with the estimated relative position of selected detection point <NUM>-<NUM> by identifying a signal state region <NUM> in which selected detection point <NUM>-<NUM> is located. For example, system <NUM> may compare the normalized intensity value of selected detection point <NUM>-<NUM> with a table of signal state boundaries representative of signal state regions <NUM> to identify the current signal state associated with selected detection point <NUM>-<NUM>. In the example of <FIG>, system <NUM> may determine that selected detection point <NUM>-<NUM> is located within rising region <NUM>-<NUM> and thus classify the current signal state as a rising signal state. In some examples, system <NUM> may apply set <NUM> to signal state model <NUM>, which may classify selected detection point <NUM>-<NUM> according to the signal state region <NUM> in which selected detection point <NUM>-<NUM> is located.

In other examples, when the relative position of selected detection point <NUM>-<NUM> is the temporal distance to a temporal reference point (e.g., expected time tmax), system <NUM> may identify the current signal state of the ion signal based on the estimated relative position of selected detection point <NUM>-<NUM>. <FIG> shows an illustrative division of the elution profile of TIC <NUM> shown in <FIG> into distinct signal state regions <NUM> (e.g., regions <NUM>-<NUM> through <NUM>-<NUM>) based on time and relative to a temporal reference point in the elution profile (e.g., expected time tmax). While <FIG> shows four distinct signal state regions <NUM>, any other suitable number of signal state regions may be used.

As shown, a baseline region <NUM>-<NUM> is located prior to a first threshold temporal distance <NUM>-<NUM> before expected time tmax (e.g., <NUM>). A rising region <NUM>-<NUM> is located between first threshold temporal distance <NUM>-<NUM> and a second threshold temporal distance <NUM>-<NUM> before expected time tmax (e.g., <NUM>). An apex region <NUM>-<NUM> is located between second threshold temporal distance <NUM>-<NUM> and a third threshold temporal distance <NUM>-<NUM> after expected time tmax (e.g., <NUM>). A falling region <NUM>-<NUM> is located between third threshold temporal distance <NUM>-<NUM> and a fourth threshold temporal distance <NUM>-<NUM> after expected time tmax (e.g., <NUM>). The baseline region <NUM>-<NUM> is also located after fourth threshold temporal distance <NUM>-<NUM>. The configuration of signal state regions <NUM> shown in <FIG> is merely illustrative, as any other configuration may be used. For example, any one or more signal state regions <NUM> may be defined relative to another reference point, such as an expected time tmin at which the intensity value is expected to reach a minimum value Imin, as indicated by dashed line <NUM>.

System <NUM> may identify a signal state of the ion signal of the elution profile by identifying a signal state region <NUM> in which selected detection point <NUM>-<NUM> is located. For example, system <NUM> may compare the estimated temporal distance of selected detection point <NUM>-<NUM> with a table of signal state boundaries representative of signal state regions <NUM> to identify the current signal state associated with selected detection point <NUM>-<NUM>. In the example of <FIG>, system <NUM> may determine that selected detection point <NUM>-<NUM> is located within rising region <NUM>-<NUM> and thus classify the current signal state as a rising signal state. In some examples, system <NUM> may apply set <NUM> to signal state model <NUM>, which may classify selected detection point <NUM>-<NUM> according to the signal state region <NUM> in which selected detection point <NUM>-<NUM> is located.

As mentioned, in some examples signal state model <NUM> comprises a machine learning model configured to estimate a relative position of a selected detection point relative to a reference intensity and/or time point and classify, based on the estimated relative position of the selected detection point, a current signal state of the ion signal of the elution profile. Illustrative methods of training a machine learning model will now be described. <FIG> illustrates a method <NUM> for training a machine learning model that may implement signal state model <NUM>. As shown, training data <NUM> may be provided to a model training facility <NUM>, which may utilize the training data <NUM> to train a signal state model <NUM>. The examples that follow describe training signal state model <NUM> to estimate a normalized intensity value of a selected detection point and classify, based on the estimated normalized intensity value of the selected detection point, a current signal state of the ion signal of the elution profile. However, the same principles may be applied to train signal state model to classify the current signal state based on an estimated temporal distance of the selected detection point from a temporal reference point.

Model training facility <NUM> may perform any suitable heuristic, process, and/or operation that may be configured to train a machine learning model. In some examples, model training facility <NUM> may be implemented by hardware and/or software components (e.g., processors, memories, communication interfaces, instructions stored in memory for execution by the processors, etc.), such as storage facility <NUM> and/or processing facility <NUM> of system <NUM>.

Signal state model <NUM> may be any suitable type of machine learning model, such as a neural network model (e.g., a convolutional neural network (CNN)), a Boosted Decision Tree regression model, a Decision Forest regression model, a Fast Forest Quantile regression model, and an ordinal regression model.

Training data <NUM> may be acquired or extracted from data representative of one or more elution profiles (e.g., a set of LC-MS detection points). <FIG> illustrates a data set that may be included in training data <NUM>. <FIG> shows an illustrative TIC <NUM> that may be generated from, or is representative of, data acquired from a LC-MS system <NUM>. It will be recognized that signal state model <NUM> may be trained based on TIC <NUM> source data without generating TIC <NUM>. As shown, TIC <NUM> plots a plurality of detection points <NUM> each representing a detected intensity value, as detected by a mass spectrometer during full-spectrum acquisitions, and retention time (min). Each successive acquisition adds a new detection point <NUM> to TIC <NUM>. Detection points <NUM> together form an elution profile <NUM> of the components eluting from column <NUM>. Elution profile <NUM> includes a peak <NUM> having an apex <NUM> at which a detected intensity is at a maximum intensity value Imax, as indicated by dashed line <NUM>.

Training of signal state model <NUM> is based on the principle that the normalized intensity value or temporal distance of a selected detection point <NUM> (e.g., a ratio of the detected intensity value of the selected detection point <NUM> to a known reference intensity value, such as Imax) is a function of the detected intensity levels of one or more historical detection points <NUM> from the same experiment. Accordingly, training data <NUM> applied to model training facility <NUM> comprises a series of input vectors, each input vector having detected intensity values for a distinct set of detection points <NUM>. Each input vector may comprise any distinct set of detection points <NUM> as may serve a particular implementation. For example, a first input vector may comprise detected intensity values for a first set <NUM>-<NUM> of detection points <NUM>, a second input vector may comprise intensity values for a second set <NUM>-<NUM> of detection points <NUM>, a third input vector may comprise intensity values for a third set <NUM>-<NUM> of detection points <NUM>, and so on.

In the example of <FIG>, each input vector includes intensity values for ten detection points <NUM>. However, each input vector may include intensity values for any other suitable number of detection points <NUM> (e.g., <NUM>, <NUM>, <NUM>, etc.). Alternatively, each input vector may include intensity values for all detection points <NUM> included in one or more prior input vectors.

In some examples, detection points <NUM> may not be evenly spaced along the time axis. To simplify training of signal state model <NUM>, detection points <NUM> may be corrected (such as by interpolation) to a fixed and uniform time spacing (e.g., <NUM> second).

Any number of input vectors may be applied to model training facility <NUM>. In some examples, the number of input vectors is selected so as to encompass at least a full half-width of peak <NUM>. In the example of <FIG>, five input vectors having intensity values for ten detection points each would encompass at least a full half-width of peak <NUM>. Alternatively, the number of input vectors may be selected so as to encompass a full width of peak <NUM>. Input vectors that encompass the full width of peak <NUM> may be used to train signal state model <NUM> to estimate an expected time tmin at which the intensity value of a peak is expected to reach a baseline level.

A particular detection point <NUM> is selected for each input vector as a selected detection point. Any detection point <NUM> included within each respective input vector may be selected. In the examples that follow, the selected detection point <NUM> for each input vector is the right-most (most recent) detection point <NUM> included in the respective input vector. For example, the first input vector includes detection point <NUM>-<NUM> as the selected detection point, the second input vector includes detection point <NUM>-<NUM> as the selected detection point, and the third input vector includes detection point <NUM>-<NUM> as the selected detection point. In alternative examples, the selected detection point <NUM> is not the right-most detection point but may be any other suitable detection point (e.g., detection point <NUM>-<NUM> is the selected detection point for the second input vector defined by set <NUM>-<NUM>, detection point <NUM>-<NUM> is the selected detection point for the third input vector defined by set <NUM>-<NUM>, etc.).

Training data <NUM> also includes the known desired output values from signal state model <NUM>. The known desired output values comprise the normalized intensity values of each selected detection point <NUM> for each input vector (or the temporal distance values of each selected detection point <NUM> for each input vector). The normalized intensity values are known because the reference intensity value (e.g., Imax) is known. The known output values may be used for supervised training of signal state model <NUM>.

To simplify training of signal state model <NUM>, detection points <NUM> may in some examples be corrected based on the known reference intensity value. That is, the detected intensity value of each detection point <NUM> may be normalized based on the known reference value.

In the examples described above, the reference intensity value is the expected maximum intensity value Imax at apex <NUM> of peak <NUM>. However, any other normalization scheme may be used, and the reference intensity value may be any other suitable reference value, such as a known running average intensity value, a global maximum intensity value, a recent maximum intensity value, etc. In some examples, the normalization scheme may include a baseline slope and/or a baseline level correction. For example, the normalized intensity value may be determined as the ratio of the difference between the current intensity value Ic and the baseline intensity value Imin to the difference between the expected maximum intensity value Imax and the baseline intensity value Imin ((Ic-Imin)/(Imax-Imin)).

In some examples, training data <NUM> may be split into two sets of data, such that a first set of training data may be used for training signal state model <NUM> and a second set of training data may be used to score signal state model <NUM>. For example, training data <NUM> may be split so that a first percentage (e.g., <NUM>%) of the input vectors may be used as the training set for training signal state model <NUM>, and a second percentage (e.g., <NUM>%) of the input vectors may be used as the scoring set to generate an accuracy score for signal state model <NUM>.

During a training phase, model training facility <NUM> may run one or more sessions to train signal state model <NUM> based on training data <NUM> to estimate a normalized intensity value of a selected detection point <NUM>. Model training facility <NUM> may also run one or more sessions to train signal state model <NUM> based on training data <NUM> to estimate a temporal distance of the selected detection point to a reference time, e.g., an expected time tmax at which the intensity value of an elution profile is expected to reach maximum intensity value (e.g., an apex of the elution profile) and/or an expected time tmin at which the intensity value of the elution profile is expected to reach a baseline intensity value. Model training facility <NUM> may also run one or more sessions to train signal state model <NUM> based on training data <NUM> to estimate a signal state region in which the selected detection point is located. Model training facility <NUM> may use any suitable machine learning technology or algorithm to perform operations to facilitate learning, by a machine learning model, of how to fit the machine learning model to the detected intensity values within the first set of training data <NUM>.

Completion of a training phase, by model training facility <NUM>, may result in trained signal state model <NUM> that is configured to estimate a relative position of a selected detection point and classify a current signal state of the ion signal. The trained signal state model <NUM> may be stored in a data store, such as storage facility <NUM>, and may be executed during runtime by any suitable computing component, including processing facility <NUM>.

If data for multiple different chromatography conditions is acquired from survey acquisitions with a period short enough to characterize the chromatographic peaks (the Nyquist limit), trained signal state model <NUM> may be applicable to experimental data sets that may use different chromatography conditions and have different peak widths. The Nyquist limit for a Gaussian curve is six points. Thus, if training data <NUM> includes six detection points across a chromatographic peak, interpolation to a fixed time spacing between the sampled points could be robust.

In alternative examples, signal state model <NUM> may be trained based on training data <NUM> configured for a specific application, such as a selected m/z range, specific chromatographic conditions, a specific sample type, etc. In such examples, signal state model <NUM> could be trained after acquiring data for an initial priming experiment, and signal state model <NUM> could be used thereafter only for subsequent iterations of that specific experiment.

In some examples, signal state model <NUM> may be refined or further trained in real time (e.g., during an experiment), such as if it is found that estimated normalized intensity values or estimated temporal distances are deviating significantly (e.g., by a predetermined amount) from the actual values (which may be subsequently detected as the experiment progresses).

Illustrative embodiments of performing operation <NUM> of method <NUM> (see <FIG>) will now be described with reference to <FIG> shows an illustrative method <NUM> of setting the accumulation time based on the current signal state of the ion signal of the elution profile. While <FIG> shows illustrative operations according to one embodiment, other embodiments may omit, add to, reorder, and/or modify any of the operations shown in <FIG>. One or more of the operations shown in <FIG> may be performed by LC-MS system <NUM> and/or system <NUM>, any components included therein, and/or any implementations thereof.

In operation <NUM>, system <NUM> determines a nominal accumulation time tnom based on the ion flux at the selected detection point and then corrects the nominal accumulation time tnom with a correction factor associated with the current signal state of the ion signal of the elution profile to obtain the accumulation time taccum. The nominal accumulation time tnom may be determined by the following Equation (<NUM>): <MAT> where tnom is the nominal accumulation time for the next acquisition, target is the target number of ions to be accumulated in the next acquisition, and ion flux is the ion flux measured at the selected detection point (in units of ions per unit time). The target is previously determined, as explained above, based on characteristics of the device (e.g., space charge capacity), experiment conditions, and/or method parameters.

In operation <NUM>, system <NUM> determines the accumulation time taccum by adjusting the nominal accumulation time tnom with a correction factor C(ss) that is associated with the current signal state (ss) classified in operation <NUM>, in accordance with the following Equation (<NUM>): <MAT> where C(ss) is the correction factor associated with the current signal state, such as a baseline state correction factor Cbase, a rising state correction factor Crising, an apex state correction factor Capex, or a falling state correction factor Cfalling. The value of each correction factor C(ss) is set to prevent overshooting or undershooting the target number of ions to be accumulated. For example, the baseline state correction factor Cbase may be approximately <NUM>, the rising state correction factor Crising may be less than <NUM>, the apex state correction factor Capex may be approximately <NUM>, and the falling state correction factor Cfalling may be greater than <NUM>.

In operation <NUM>, system <NUM> sets the accumulation time for the device (e.g., ion accumulator <NUM> and/or mass analyzer <NUM>) as the accumulation time taccum determined in operation <NUM>.

<FIG> shows another illustrative method <NUM> of setting the accumulation time based on the current signal state of the ion signal of the elution profile. While <FIG> shows illustrative operations according to one embodiment, other embodiments may omit, add to, reorder, and/or modify any of the operations shown in <FIG>. One or more of the operations shown in <FIG> may be performed by LC-MS system <NUM> and/or system <NUM>, any components included therein, and/or any implementations thereof. Method <NUM> is similar to method <NUM> except that, in method <NUM>, the accumulation time taccum during a baseline state is not adjusted by a correction factor C(ss).

In operation <NUM>, system <NUM> determines the nominal accumulation time tnom. Operation <NUM> may be performed in any suitable way, such as in the manner described for operation <NUM>.

In operation <NUM>, system <NUM> determines whether the current signal state classified in operation <NUM> (see <FIG>) is a baseline signal state. If the current signal state is not a baseline signal state, processing proceeds to operations <NUM> and <NUM>.

In operations <NUM> and <NUM>, system <NUM> determines the accumulation time taccum and sets the device accumulation time to accumulation time taccum. Operations <NUM> and <NUM> may be performed in any suitable way, such as in the manner described for operations <NUM> and <NUM>, respectively.

If the current signal state is a baseline signal state, processing proceeds to operation <NUM>. In operation <NUM>, system <NUM> determines the minimum of a constant baseline accumulation time tbase (e.g., <NUM> milliseconds) and the nominal accumulation time tnom, as given by the following Equation (<NUM>): <MAT> As explained above, the baseline accumulation time tbase may be determined previously and may be configured to produce a target population of accumulated ions. The baseline accumulation time tbase may be determined empirically or manually or by optimization, as will be described below in more detail.

In operation <NUM>, the accumulation time taccum is set to the minimum of the baseline accumulation time tbase and the nominal accumulation time tnom. Setting the accumulation time taccum to the minimum of the baseline accumulation time tbase and the nominal accumulation time tnom during the baseline state provides a balance between sensitivity (e.g., ensuring enough ions are accumulated) and not overshooting the target number of ions. Since the baseline accumulation time tbase regulates the initial ion flux, the baseline accumulation time tbase can be set to manage or prevent overshooting, such as if the current signal state is incorrectly classified as a baseline state when the elution profile is actually in a rising state. In this scenario, setting the baseline state to be less than the nominal accumulation time tnom can prevent (or at least reduce) overshooting the target.

The correction factor C(ss) associated with each signal state and used in methods <NUM> and <NUM> may be determined in any suitable way. In some examples, each correction factor C(ss) is determined empirically, iteratively, or by a suitable algorithm (e.g., an optimization algorithm, a machine learning model, a neural network, etc.). In some examples, as will now be described with reference to <FIG> and <FIG>, correction factors C(ss) are determined based on principles borrowed from reinforcement learning in which an action to be taken by an agent is determined by a reward policy given a particular state. Here, the agent is system <NUM>, the action to be taken is setting the accumulation time taccum, and the state is the current signal state of the ion signal in the elution profile.

<FIG> shows a graph <NUM> of an illustrative reward policy <NUM> that may be used to determine the correction factors C(ss) for each signal state. Graph <NUM> plots a reward R as a function of an ion/target ratio (the ratio of the actual number of accumulated ions to the target number of accumulated ions). In this example, the reward R is assigned a value ranging from -<NUM> to <NUM> depending on the value of the ion/target ratio, with a maximum reward (a value of <NUM>) occurring when the ion/target ratio is <NUM> (e.g., when the actual number of accumulated ions is the same as the target number of accumulated ions). However, the reward R may be assigned any other value as may suit a particular implementation.

As can be seen in <FIG>, the slope of the reward policy <NUM> is steeper for ion/target ratios greater than <NUM> than for ion/target ratios less than <NUM>, thereby penalizing overshooting the target more than undershooting the target since accumulating too many ions results in space-charge effects such as mass shifts, peak broadening, and coalescence. For example, with reward policy <NUM>, undershooting the target by <NUM>% results in a reward of about <NUM> while overshooting the target by <NUM>% results in a reward of about <NUM>. It will be recognized that reward policy <NUM> (e.g., the shape, slope, values of reward R, etc.) may be modified as desired, and may be tailored for the specific attributes of the instrument (e.g., the ion capacity of ion accumulator <NUM> or mass analyzer <NUM>), the particular assay (e.g., number of target analytes, shape of peaks in the elution profile (e.g., Gaussian, non-Gaussian, etc.)), and/or experiment conditions. Generally, reward policy <NUM> is based on characteristics of the measurement system, such as how costly it is to overfill the analyzer.

In some embodiments, a separate validation metric could be used to optimize reward policy <NUM>. For example, the validation metric could be a determination of the dynamic range of quantification for a series of analytes, using experimental or simulated data. This validation metric could be used to inform decisions about the shape and configuration of reward policy <NUM>.

Reward policy <NUM> may be used to determine values of the correction factors C(ss). As explained above, the actual number of ions that are accumulated is based on the ion flux and the accumulation time taccum, which depends on the correction factors C(ss), as shown by Equation (<NUM>) above. Correction factors C(ss) may be determined by optimizing the reward (as determined by reward policy <NUM>) over the entire elution profile and, hence, over all states. The reward may be optimized by obtaining a set of correction factors C(ss) (e.g., the set of Cbase, Crising, Capex, and Cfalling) that results in an optimum reward (e.g., an optimum total reward, an optimum average reward, etc.) over the entire elution profile or over a portion of interest of the elution profile.

As used herein, "optimize" and its variants means to seek an improved or optimum solution among a set of possible solutions, although the best solution may not necessarily be obtained, such as when an optimization process is terminated prior to finding the best solution, when multiple solutions exist that satisfy predefined criteria, when a solution satisfies minimum criteria, or when a selected optimization technique is unable to converge on the best solution. Similarly, as used herein an "optimum" parameter (e.g., a "maximum" or "minimum" value of a parameter) means the solution obtained as the result of performing an optimization process, and thus may not necessarily be the absolute extreme value of the parameter (e.g., the absolute maximum or minimum), but still adjusts the parameter and results in an improvement.

In some examples, reward policy <NUM> may be represented by a mathematical formula that can be used to optimize the reward using standard optimization techniques. In further examples, a machine learning model (e.g., a neural network) or an optimization algorithm (e.g., a genetic algorithm) may be used to optimize the reward, such as by performing a multi-dimensional optimization to optimize multiple correction factors C(ss) simultaneously.

In another approach, the reward is optimized by a one-dimensional optimization (e.g., a 1D line search) in which the optimum value for each correction factor C(ss) is determined independently of the other correction factors C(ss). The optimum value of a particular correction factor C(ss) (e.g., correction factor Crising) is the value of that correction factor C(ss) that produces an optimum reward over the entire elution profile. To determine the optimum value of a particular correction factor C(ss) using this approach, multiple episodes are run. Each episode is run by acquiring a series of mass spectra, such as by performing analytical scans, using method <NUM> described above with a particular set of correction factors C(ss). The particular correction factor C(ss) to be optimized is varied across different episodes while the other correction factors C(ss) are maintained at a constant value over all of the episodes. The constant value of the other correction factors C(ss) may be estimated or determined previously by this 1D line search optimization approach. For each episode, the rewards R for all acquisitions are determined by reward policy <NUM> and summed to produce a total reward. The optimum value of the particular correction factor C(ss) is the value that produces the optimum total reward for the elution profile. This approach for optimization of the reward may be represented by the following Equation (<NUM>): <MAT> where R(opt) is the optimized reward, R(sst) is the reward for each acquisition in an episode as determined by reward policy <NUM>, which is a function of the particular signal state ss (and, hence, a particular correction factor C(ss)) at each time t.

Determination of an optimum value of Crising is illustrated with reference to <FIG> shows an illustrative graph <NUM> that plots the total reward for a plurality of episodes as a function of correction factor Crising. Graph <NUM> includes a plurality of points <NUM> each representing a particular episode having a particular set of correction factors. In this example, points <NUM> are generated by maintaining correction factors Cbase, Capex, and Cfalling each at a constant value for all episodes while varying correction factor Crising for each episode. The correction factor Crising may be varied manually or iteratively according to an algorithm that converges to a solution. In the example of <FIG> a minimization algorithm is used, so the total reward for each episode is multiplied by negative <NUM> (-<NUM>) (or reward policy <NUM> could be inverted so that the optimum reward is -<NUM>). However, a maximization algorithm could be used without multiplying the total reward by -<NUM>. As shown in <FIG>, in this example the minimum reward occurs when the value of correction factor Crising is <NUM>. This value of correction factor Crising may then be used when running further episodes to independently optimize each of the other correction factors C(ss).

As mentioned above, in the example of method <NUM>, when the current signal state is a baseline state, system <NUM> sets accumulation time taccum as the minimum of a constant baseline accumulation time tbase and the nominal accumulation time tnom, as given by Equation (<NUM>) above, rather than by correcting the nominal accumulation time tnom with a baseline correction factor Cbase, as given by Equation (<NUM>) above. In some examples, the baseline accumulation time tbase is determined by optimizing the reward in a manner similar to optimizing the correction factors C(ss) described above. For example, multiple episodes may be run using different values of baseline accumulation time tbase in Equation (<NUM>) but constant values of correction factors Crising, Capex, and Cfalling in Equation (<NUM>), which may be estimated or previously determined. In some examples, since the baseline accumulation time tbase regulates ion flux and thus affects the values of correction factors Crising, Capex, and Cfalling, the baseline accumulation time tbase is optimized prior to optimizing the correction factors Crising, Capex, and Cfalling.

In further examples, the baseline accumulation time tbase is determined based on the number of target analytes in an experiment. For instance, system <NUM> may obtain, from a method file (which may be provided by a user), a list or number of target analytes and set the baseline accumulation time tbase based on the number of target analytes to ensure that the accumulation time taccum is short enough to analyze all of the target analytes. System <NUM> may additionally set the baseline accumulation time tbase to ensure that the accumulation time taccum is long enough to achieve sufficient sensitivity.

In the above examples, the reward is optimized according to Equation (<NUM>) by finding an optimum total reward over the entire episode. However, the reward may be optimized in any other suitable way, such as by finding an optimum average reward over the episode.

The systems and methods described above for ion population regulation use information about peak shapes and their distribution of intensities acquired previously during one or more training experiments. For example, training experiments may be performed to train signal state model <NUM>, optimize the shape of reward policy <NUM>, and optimize the reward given by reward policy <NUM> to determine the optimal correction factors C(ss), and/or optimal baseline accumulation time tbase.

In some examples, signal state model <NUM>, reward policy <NUM>, and/or correction factors C(ss) may be trained and/or optimized for various different conditions. For example, by knowing information about the expected or predicted elution profile, the sampling frequency may also be optimized, such as by selecting a sampling frequency just above the Nyquist limit for the currently detected peak. By training on experimental data, signal state model <NUM>, reward policy <NUM>, and the correction factors C(ss) are trained to handle various different peak shapes. In further examples, signal state model <NUM> may be trained to classify the current peak shape (e.g., Gaussian, non-Gaussian, etc.) and use the peak shape information to select an appropriate set of correction factors associated with that particular peak shape. In yet further examples, signal state model <NUM>, reward policy <NUM>, and/or the correction factors C(ss) may be trained for particular experiment conditions, such as a specific flowrate (e.g., nanoflow, microflow, a range of flowrates, etc.), a particular assay, a target number of analytes, etc. In further examples, signal state model <NUM> may be applied and trained on actual intensity values rather than on normalized intensity values.

In some examples, training experiments may be eliminated or reduced by based on certain assumptions. For example, signal state model <NUM> could be trained and optimized for an average peak in an elution profile, such as a Gaussian-shaped peak, by using simulated data.

Signal state model <NUM>, reward policy <NUM>, correction factors C(ss), and/or baseline accumulation time tbase may also be scored and/or updated (e.g., re-trained or re-optimized) in real-time during an analytical experiment based on data acquired during the analytical experiment (e.g., based on analytical acquisitions or scans). At various times throughout an analytical experiment, system <NUM> may perform an assessment to assess the performance of the ion population regulation process (e.g., signal state model <NUM>, reward policy <NUM>, the correction factors C(ss), and/or baseline accumulation time tbase) using analytical data already acquired up to that point. Assessments may be performed at any suitable time, such as periodically (e.g., every nth scan), randomly, or in response to a trigger event (e.g., an event indicating overfilling, such as detection of coalescence or peak broadening exceeding a threshold amount). Each assessment may assess the quality of signal state model <NUM>, reward policy <NUM>, correction factors C(ss), and/or baseline accumulation time tbase.

For example, an assessment may assess whether any detection points were incorrectly classified (based on an estimated relative position of the detection point) by a comparison with the actual peak of the elution profile. If the quantity and/or extent of the misclassification(s) exceeds a threshold value, system <NUM> may retrain signal state model <NUM> using the acquired experimental data.

As another example, system <NUM> may determine how close the current correction factors C(ss) are to achieving rewards that would be achieved by "perfect" correction factors C(ss) and/or a perfect reward policy. To this end, system <NUM> may run episodes with the currently acquired data to optimize the reward of the current reward policy and use the resulting information to determine if the reward could be improved by changing the correction factors C(ss), baseline accumulation time tbase, and/or reward policy. If the currently applied correction factors C(ss), baseline accumulation time tbase, and/or reward deviate from "perfect" values by a threshold amount, system <NUM> may re-optimize the correction factors C(ss) and/or baseline accumulation time tbase and/or select a more optimal reward policy for use during the analytical experiment.

If signal state model <NUM>, reward policy <NUM>, correction factors C(ss), and/or baseline accumulation time tbase are updated during an analytical experiment, the updated parameters may be used as the default parameters for the next experiment. In this way, the ion population regulation systems and methods can be re-trained and optimized on the fly without consuming additional time for re-training and optimization. The real-time assessment and updating process need not require input from the user, thereby improving convenience for the user.

In some examples, an analytical experiment may begin with no accumulation time corrections or adjustments and instead use conventional methods of ion population regulation, or the analytical experiment may use a signal state model and parameters (e.g., a reward policy, correction factors C(ss), and/or baseline accumulation time tbase) previously determined from other previously acquired data (e.g., training data, analytical experiments, simulated data, etc.). During the analytical experiment, a signal state model and parameters for the particular analytical experiment may be trained and determined in real-time by using data acquired during a first stage of the analytical experiment. In a second stage of the analytical experiment, system <NUM> may implement method <NUM>, including the trained signal state model and determined parameters, to regulate the ion population. The second stage may begin after a threshold has been reached, such as a minimum number of peak elutions, a minimum time elapsed, detection of a particular analyte, a minimum total ion current, etc. The initial data for training the signal state model and determining the parameters to be applied, comprising data acquired in the first segment of the analytical experiment, may be small but useable, and may be refined in subsequent re-optimizations, as described above. In some examples, the signal state model and parameters may be refined and re-optimized based on data acquired during the second stage of the analytical experiment. If corrections or parameters applied during the second stage fall outside some threshold boundaries (e.g., an acceptable tolerance), system <NUM> may revert to using the conventional methods of ion population regulation or using a signal state model trained previously on other data not acquired during the analytical experiment.

Various modifications may be made to the systems and methods described herein without departing from the scope and principles of the concepts described herein. For instance, in the examples described above the training of a signal state model and estimation of a relative position of a selected detection point is based on a plurality of detection points (e.g., a TIC). In some modifications, training of a signal state model, estimation of a relative position of a selected detection point, and/or optimization of the reward may be based on the signals of multiple m/z values or a selected m/z (e.g., an XIC) and/or over less than the entire elution profile (e.g., a small time window of interest).

In some examples, system <NUM> may set the accumulation time taccum without determining the nominal accumulation time tnom and correcting the nominal accumulation time tnom with a correction factor C(ss). For example, system <NUM> may set the accumulation time taccum as a constant accumulation time value associated with each signal state similar to the constant baseline accumulation time tbase, such as a rising accumulation time trising, an apex accumulation time tapex, and a falling accumulation time tralling. Each of these constant accumulation times may be determined in any suitable way, such as empirically, manually, and/ or by optimizing a reward policy, as explained above regarding the baseline accumulation time tbase.

In some examples, an elution profile may exhibit different characteristics at different times and thus may be associated with different reward policies and/or correction factors C(ss) or baseline accumulation time tbase at different times. For example, different reward policies, correction factors C(ss), baseline accumulation time tbase, and/or sampling frequencies may be scheduled for use at different times during the elution profile or may be triggered upon the detection of certain signals (e.g., certain peak intensities, peak shapes, etc.).

In further examples, the principles described herein may be applied to regulation of ion population through a transmission-type instrument rather than in a trapping-type instrument that accumulates ions. In these examples, the term "injection time" refers to the period of time over which ions are injected into a device, such as a ToF mass filter or a quadrupole mass filter and may be used interchangeably with accumulation time. Some transmission-type instruments may additionally or alternatively use ion attenuation to regulate the intensity of the beam that hits the detector and thereby regulate the ion population. In these examples, the degree of ion attenuation may be optimized in a manner similar to optimization of injection time and may be optimized independently or together with optimization of injection time.

In additional modifications, a separation device (e.g., a liquid chromatograph, a gas chromatograph, a capillary electrophoresis device, etc.) and/or a mass spectrometer (e.g., mass spectrometer <NUM>) may include or may be coupled with an ion mobility analyzer, and data acquired by the ion mobility analyzer may be used to train a signal state model and estimate a relative position of a selected detection point in a manner similar to the methods described above for data acquired by the mass spectrometer. For example, a first set of data acquired with an ion mobility analyzer and a mass analyzer may include a series of mass spectra including intensity values of ions produced from the sample components as a function of m/z and/or ion mobility of the ions (e.g., a collision cross-section (CCS) of the ions). A second set of data may be extracted from the first set of data. The extracted second set of data may include a plurality of detection points representing intensity, as detected by the mass analyzer, as a function of time for a selected m/z and/or a selected CCS or range of CCS. The second set of data may be used in any way described herein, such as to train a signal state model and/or to estimate a relative position of a selected detection point for the selected CCS or range of CCS.

In some examples, system <NUM> may be configured to request user input to manage or adjust settings of the ion population regulation processes. For example, system <NUM> may obtain, from a user, method settings, a list of target analytes, a selected m/z, and/or any other initial or default values of parameters associated with signal state model <NUM> and reward policy <NUM>. System <NUM> may also be configured to notify the user of certain changes, such as when the accumulation time taccum changes or changes by a threshold amount, or the need for changes, such as when an assessment indicates parameters should be adjusted.

In certain embodiments, one or more of the systems, components, and/or processes described herein may be implemented and/or performed by one or more appropriately configured computing devices. To this end, one or more of the systems and/or components described above may include or be implemented by any computer hardware and/or computer-implemented instructions (e.g., software) embodied on at least one non-transitory computer-readable medium configured to perform one or more of the processes described herein. In particular, system components may be implemented on one physical computing device or may be implemented on more than one physical computing device. Accordingly, system components may include any number of computing devices, and may employ any of a number of computer operating systems.

In certain embodiments, one or more of the processes described herein may be implemented at least in part as instructions embodied in a non-transitory computer-readable medium and executable by one or more computing devices. In general, a processor (e.g., a microprocessor) receives instructions, from a non-transitory computer-readable medium, (e.g., a memory, etc.), and executes those instructions, thereby performing one or more processes, including one or more of the processes described herein.

A computer-readable medium (also referred to as a processor-readable medium) includes any non-transitory medium that participates in providing data (e.g., instructions) that may be read by a computer (e.g., by a processor of a computer). Such a medium may take many forms, including, but not limited to, non-volatile media, and/or volatile media. Non-volatile media may include, for example, optical or magnetic disks and other persistent memory. Volatile media may include, for example, dynamic random access memory ("DRAM"), which typically constitutes a main memory. Common forms of computer-readable media include, for example, a disk, hard disk, magnetic tape, any other magnetic medium, a compact disc read-only memory ("CD-ROM"), a digital video disc ("DVD"), any other optical medium, random access memory ("RAM"), programmable read-only memory ("PROM"), electrically erasable programmable read-only memory ("EPROM"), FLASH-EEPROM, any other memory chip or cartridge, or any other tangible medium from which a computer can read.

<FIG> shows an illustrative computing device <NUM> that may be specifically configured to perform one or more of the processes described herein. As shown in <FIG>, computing device <NUM> may include a communication interface <NUM>, a processor <NUM>, a storage device <NUM>, and an input/output ("I/O") module <NUM> communicatively connected one to another via a communication infrastructure <NUM>. While an illustrative computing device <NUM> is shown in <FIG>, the components illustrated in <FIG> are not intended to be limiting. Additional or alternative components may be used in other embodiments. Components of computing device <NUM> shown in <FIG> will now be described in additional detail.

One or more I/O modules may be used to receive input for a single virtual experience.

In some examples, any of the systems, computing devices, and/or other components described herein may be implemented by computing device <NUM>. For example, storage facility <NUM> may be implemented by storage device <NUM>, and processing facility <NUM> may be implemented by processor <NUM>.

Claim 1:
A method of performing mass spectrometry, comprising:
accumulating (<NUM>), over an accumulation time, ions produced from components eluting from a chromatography column (<NUM>);
transferring the accumulated ions to a mass analyzer (<NUM>);
acquiring (<NUM>), during an acquisition, a mass spectrum (<NUM>) of detected ions derived from the transferred ions;
obtaining (<NUM>), from a series of acquired mass spectra including the acquired mass spectrum (<NUM>) and a plurality of previously-acquired mass spectra (<NUM>), an elution profile (<NUM>, <NUM>) comprising a plurality of detection points (<NUM>) representing intensity of the detected ions as a function of time;
classifying (<NUM>), based on a subset of detection points included in the plurality of detection points (<NUM>), a current signal state of the elution profile as one of the group consisting of a baseline state, a rising state, an apex state and a falling state; and
setting (<NUM>), for a next acquisition of a mass spectrum, the accumulation time based on the classified current signal state of the elution profile.