This repository contains a Shiny app (app.R) for Slice-PASEF method generation and visualisation.
R 4.0+ with packages arrow, data.table, dplyr, 'MASS', scales, shiny, shinyWidgets, zip. To install the packages in R, type install.packages(c('arrow', 'data.table', 'dplyr', 'MASS', 'scales', 'shiny', 'shinyWidgets', 'zip')).
Download app.R and tims-method-functions.R into some directory, such as D:/Downloads/Slice-PASEF. Install the required packages in R. The app can be started in multiple ways.
- Open
app.Rin RStudio and clickRun Appon the top right of the editor window. A new window will open, showing the interface of the app. Consider maxmimising the window for better usability. - Alternatively, in the command line (example here uses PowerShell),
cdto the parent directory ofapp.Rlikecd 'D:/Downloads/Slice-PASEF'and start the app using Rscript like& 'C:\Program Files\R\R-4.3.1\bin\Rscript.exe' app.R(adjust the path to your R installation accordingly; leave out the&at the start when using cmd.exe). A message likeListening on http://127.0.0.1:1234will appear. Open your browser and go to the shown adress (likehttp://127.0.0.1:1234).
Note: Despite the terminology of "uploading" used below and in the app, all processing happens on your computer, i.e. your data stays on your machine.
The general workflow is as follows:
- Precursors are selected from a library (usually DIA/DDA-PASEF).
- The IM values of the library are calibrated to the specific instrument by aligning to a run recorded on that instrument.
- The Slice-PASEF method is generated.
First step is to load the library. The library should be generated with a method with vertically (IM dimension) wide windows (like DDA/DIA-PASEF), completely covering the IM/mz ion cloud. The library is expected to be a .tsv or .parquet file in DIA-NN format containing columns IM (or IonMobility), Precursor.Mz (or PrecursorMz), Precursor.Charge (or PrecursorCharge), Modified.Sequence (or ModifiedPeptide or ModifiedPeptideSequence + Precursor.Charge/PrecursorCharge). Alternatively, you can upload a DIA-NN report in .parquet format, the tool will then use the first appearance of each Precursor in the report to represent the ion cloud.
Some libraries are deposited here.
The library can optionally be filtered using dplyr syntax, e.g., Precursor.Mz>600 & IM>1. Tick apply filter to apply the filter; if the tick goes away, the filter is invalid (check syntax, error message will be in R console).
Select charge states of precursors to take into account when generating the method.
Select IM range (on the IM scale after calibration) for precursors to be included.
Select m/z range of precursors to take into account when generating the method.
Upload DIA-NN report containing an IM-enabled (e.g. dia-PASEF) acquisition to be used for calibration. The library IMs will be adjusted based on the IMs in the report.
Select an IM-enabled acquisition to use for calibration. The acquisition needs to have precursors overlapping with the library (i.e., same species) and should be acquired using the same chromatographic and TIMS ramp settings on the same timsTOF instrument that the Slice-PASEF method is supposed to be used on. Precursors are matched between library and report based on Precursor.Id, which means that when using a report containing, e.g., channels, the Precursor.Ids may need to be adjusted to match the Precursor.Ids in the library.
Hint: Check the method visualisations generated on-the-fly.
Define the number of frames, i.e., the number of TIMS ramps required to sample the entire m/z width of the ion cloud in MS2.
Define the number of m/z windows per TIMS ramp. Note that this setting has marginal influence since the precursor ion space gets sliced quasi-continuously anyhow (thus, if, then this mostly affects precursor ions at the lowly-populated edges of the sampled ion cloud).
Define the number of consecutive frame repeats.
Define the frequency of MS1 scans within the method, i.e., the proportion of time that the method spends on MS1 scans. 1/7 = 1 in every 7 TIMS ramps is spent on MS1 scans.
The name of the created and downloaded method file will have this prefix. You can place details about the library or the run used for calibration here, so that you can later retrace how you generated the method.
The download in .zip format includes a .settings file to save the settings used for generating the method.
The top plot shows the precursors in the library in grey and the precursors after filtering as described in 1. Library settings colored by charge state.
The middle plot shows the selected precursors from step 1 in grey and the generated Slice-PASEF windows, colored by subcycle.
The bottom plot shows the acquisition sequence of MS1 and MS2 scans.
Upload previously generated methods in .txt or .zip format for visualisation of the IM*m/z window positions and subcycle sequence.