-
Notifications
You must be signed in to change notification settings - Fork 2
OpenSwath
This page is intended to document how OpenSwath works on a technical level
OpenSwathWorkflow is an executable that is most commonly used to run OpenSwath: https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/nightly/html/UTILS_OpenSwathWorkflow.html
The executable uses the OpenSwathWorkflow Algorithm to perform its job: here
The overall execution flow in this class is as follows (see performExtraction() function)
- Obtain precursor ion chromatograms (if enabled) through MS1Extraction_()
- Perform scoring of precursor ion chromatograms if no MS2 is given
- Iterate through each SWATH-MS window:
- Select which transitions to extract (proceed in batches) using OpenSwathHelper::selectSwathTransitions()
- Iterate through each batch of transitions:
- Extract current batch of transitions from current SWATH window:
- Select transitions for current batch (see selectCompoundsForBatch_())
- Prepare transition extraction (see prepareExtractionCoordinates_())
- Extract transitions using ChromatogramExtractor::extractChromatograms()
- Convert data to OpenMS format using ChromatogramExtractor::return_chromatogram()
- Score extracted transitions (see scoreAllChromatograms_())
- Write scored chromatograms and peak groups to disk (see writeOutFeaturesAndChroms_())
- Extract current batch of transitions from current SWATH window:
done in OpenSwathHelper::selectSwathTransitions() but with special functions for PASEF and PRM
See ChromatogramExtractor, uses a set of coordinates to extract either MS1 or MS2 chromatograms around a m/z coordinate within a window. For ion mobility, also considers an ion mobility window, the chromatograms are therefore for an ion mobility slice.