![]() |
OpenMS
|
Quality metrics for data-independent acquisition (DIA) runs, per run and per isolation window.
This tool re-implements DIAuditor by David L. Tabb. It reads one or more mzML files and reports how each run was acquired: the MS1 sampling, the DIA isolation windows (count, m/z range, widths, ion mobility, how often each window was measured and how fast) and how ion current and peak counts are distributed over the run and over the windows. This helps to develop DIA methods and to recover the method of DIA data acquired elsewhere.
Inputs: mzML files are read spectrum by spectrum, so their size does not matter. Depending on the build, Thermo .raw files (the OpenMS Thermo reader, which needs a .NET 8 runtime) and Bruker timsTOF .d directories or .d.zip archives (diaPASEF frames are split into their isolation windows) can be given directly. These readers load a whole run into memory, so large runs need correspondingly much memory; converting them to mzML first avoids that. mzML spectra are used as they are stored, profile or centroided, which matters for the peak counts; .raw files are read with Thermo's peak picking, as FileConverter does by default. Values an input does not provide are NA, e.g. the mass resolving power (MS1Resolution, MassResolvingPower) for .d input, which has none, and for mzML from converters that do not write it (MS:1000800), such as ThermoRawFileParser.
MS2 spectra are grouped into isolation windows by the isolation window of their precursor (target m/z, lower and upper offset) and by their ion mobility settings (see ion_mobility): the FAIMS compensation voltage, and the ion mobility range of the window as it is written for diaPASEF frames ('ion mobility lower/upper limit', e.g. by msconvert –combineIonMobilitySpectra or the OpenMS timsTOF reader). These values are matched with an absolute tolerance of 1e-6 (as in OpenSWATH). TIMSCONVERT writes no ion mobility range of a window, only the ion mobility of each peak, so the windows of its diaPASEF output are told apart by m/z only. Windows are listed in the order in which they are first acquired. MS2 spectra without an isolation window (no precursor, or no isolation window offsets) are not a DIA isolation window: they are listed together in the last row of a run in out_windows, without m/z values, and left out of the window count and of all other window metrics. Spectra of MS level 3 and higher, and spectra without retention time, are counted but not assigned to windows.
Peak count quartiles are taken as in DIAuditor: the values at positions n/4, n/2 and n/4 + n/2 (integer division) of the n sorted counts.
The tool warns about data it cannot describe well: MS2 spectra that are single ion mobility scans (e.g. diaPASEF converted without combining the scans of a frame; every scan then counts as a measurement of its window), MS2 spectra with more than one isolation window (several precursor elements, as in multiplexed acquisition such as MSX; only the first window is used, so such data should be demultiplexed first), MS2 spectra with an ion mobility array but no ion mobility range of their window (with ion_mobility 'auto'), MS2 spectra without an isolation window, and runs without isolation windows or whose windows are mostly measured once (e.g. DDA).
Outputs (at least one is required)
out: one row per run, with the columns of DIAuditor's DIAuditor-byRun.tsv, followed by run-level MS2 statistics.out_windows: one row per isolation window of each run, with the columns of DIAuditor's DIAuditor-byIsolationWindow.tsv (IonMobility is the FAIMS compensation voltage), followed by the ion mobility range of the window and the isolation target m/z. MS2 spectra without an isolation window follow in one row with NA m/z values.out_mzqc: an mzQC file with one runQuality per run. It contains only metrics defined in the PSI-MS vocabulary (e.g. MS:4000190 to MS:4000199 for DIA), with the units the vocabulary defines. Per-window values are not part of it, because the vocabulary has no term for them. The DIA window metrics are written only for runs with isolation windows. MS:4000069 'm/z acquisition range' is the range of the precursor m/z values of the MSn spectra (as the vocabulary defines it); the run table's MZRangeMin/MZRangeMax is the m/z range the isolation windows cover.In the tables, retention times are given in minutes, cycle times in seconds; values that are undefined (e.g. the cycle time of a window measured only once) are written as NA.
Differences to the original DIAuditor
in) instead of all mzML files in the current directory, and may also be Thermo .raw files or Bruker .d directories.ion_mobility is set to 'faims' or 'none'); DIAuditor uses the isolation target and the FAIMS voltage only.tic), and the instrument model is recognised from the whole PSI-MS vocabulary.tic) is accumulated in double precision.The command line parameters of this tool are:
DIAuditor -- Computes quality metrics of data-independent acquisition (DIA) runs, per run and per isolation
window.
Full documentation: http://www.openms.de/doxygen/nightly/html/TOPP_DIAuditor.html
Version: 3.6.0-pre-nightly-2026-09-29 Sep 30 2026, 01:45:35, Revision: 55f7bdb
To cite OpenMS:
+ Pfeuffer, J., Bielow, C., Wein, S. et al.. OpenMS 3 enables reproducible analysis of large-scale mass spec
trometry data. Nat Methods (2024). doi:10.1038/s41592-024-02197-7.
Usage:
DIAuditor <options>
Options (mandatory options marked with '*'):
-in <files>* Input files, one per run: mzML, Thermo .raw and Bruker timsTOF .d (directory or
.d.zip), as supported by this build (valid formats: 'mzML', 'raw', 'd')
-out <file> Table with one row per run (valid formats: 'tsv')
-out_windows <file> Table with one row per isolation window of each run (valid formats: 'tsv')
-out_mzqc <file> MzQC file with the run metrics (valid formats: 'mzQC')
-tic <choice> Total ion current of a spectrum. 'auto': the value in the file if present, otherwis
e the sum of intensities; 'file': only the value in the file, spectra without it
count with 0 (like the original DIAuditor); 'computed': always the sum of intensiti
es. (default: 'auto') (valid: 'auto', 'file', 'computed')
-peak_count <choice> Peaks counted per spectrum. 'all': all data points (like the original DIAuditor);
'nonzero': data points with an intensity above zero (differs for profile data).
(default: 'all') (valid: 'all', 'nonzero')
-ion_mobility <choice> Ion mobility settings that separate isolation windows with the same m/z range. 'aut
o': the FAIMS compensation voltage and the ion mobility range of the window (diaPAS
EF frames); 'faims': only the FAIMS compensation voltage (like the original DIAudit
or); 'none': windows are defined by m/z alone. (default: 'auto') (valid: 'auto',
'faims', 'none')
Common TOPP options:
-ini <file> Use the given TOPP INI file
-threads <n> Sets the number of threads allowed to be used by the TOPP tool (0 = all available
cores) (default: '1')
-write_ini <file> Writes the default configuration file
--help Shows options
--helphelp Shows all options (including advanced)
INI file documentation of this tool:
This section lists all parameters supported by the tool. Parameters are organized into hierarchical subsections that group related settings together. Subsections may contain further subsections or individual parameters.
Each parameter entry contains the following information:
Parameter tags provide additional information about how a parameter is used. Some tags indicate whether a parameter is required or intended for advanced configuration, while others may be used internally by OpenMS or workflow tools.
Parameters highlighted as required must be specified for the tool to run successfully. Parameters marked as advanced allow fine-tuning of algorithm behavior and are typically not needed for standard workflows.