Installing and starting Chrombox QWindows computersMac computers (OS X)Linux computersStarting Chrombox Q from the Matlab desktop (on all systems)Changing settingsUpdatingUsing Chrombox Q with NIST MS-Search 2.0.Tutorial 1. Basic functions1.1. Startup and select method1.2. Loading a file:1.3. Baseline subtraction1.4. Peak region detection1.5 Quantification1.6. Identification and reportingChrombox Q – Tutorial 22.1. Startup and select method2.2. Peak region detection:2.3. Quantification2.4. Identification and reportingTutorial 3. Baseline subtraction and calibration3.1. Importing data3.2. Baseline removal3.3. Peak region detection:3.4. Quantification3.5. Building the calibration.3.6. Loading the PAH-mixture3.7. Background removal3.8. Peak region detection3.9. Quantification3.10. Identification
The following text styling is applied in this document. Commands, paths or filenames are denoted by:
path\filename.ext. Buttons in the graphical user interface are shown as
[Button]. Keys on the keyboard are denoted by
[Key]. A parameter to be set is denoted by
parameter, and a value of a parameter or an option in a menu is denoted by
C:\CHROMBOX\. This will be the Q-root folder
"Chrombox Q.exe"file in the Q-root folder.
If installed on a network disk you may have to use one of the methods described below:
qstart.min the folder
…\qq\variousand move it to somewhere in your Mathlab path. This is the only file that needs to be in the Matlab path. Possible destinations may be found by starting Matlab and typing
qstart.mand edit the last line after the
runcommand so that it points to the file
qq_startscript(see example below).
qstartin the Matlab command window.
An example of
qstart.m is shown below:
You can also create a desktop shortcut by copying the shortcut to Matlab and adding the following to the destination
/automation /r qstart An example of how it can look is shown below:
C:\MATLAB6p5\bin\win32\matlab.exe /automation /r qstart
Download the installation and unzip the archive
Move the folder
CC to the preferred destination, for example
/Users/yourname/Documents/CHROMBOX/QQ, This will be the Q-root folder
The shell script
macstart_q.command stored in the Q-root folder can be used to start the program if the file is executable and Matlab can be started with the terminal command
./matlab. Note that the extension
.command may be hidden in Finder.
To check if Matlab can executed by
./matlab open the terminal and type
./matlab. If Matlab does not start you can do the following:
sudo ln -s /Applications/MATLAB_RXXXXx.app/bin/matlab /usr/local/binwhere
RXXXXxshould be replaced by the Matlab version number, for example "R2017a". Alternatively, open
Applicationsin Finder. Locate Matlab, right-click and select
Show Package Contents. Open the folder
binand locate the application file
matlab. In terminal type
sudo ln -swithout pressing enter. Thereafter drag the
matlabapplication file to the terminal. Ensure there is a space between "
"/Applications"and press enter.
macstart_q.command executable, do the following:
Open the terminal. Use
cd to change directory to the Q root where the
macstart_q.command is located or open the terminal at the Q root folder if that is an option. Type
chmod +x macstart_q.command. Alternatively, type
chmod +x without pressing enter and drag the
macstart_q.command file from Finder to the terminal. Ensure there is a space between
"macstart_q.command" and press enter.
Thereafter double-click on
macstart_q.command in Finder to start the program. Depending on your security settings you may get the following message: "macstart_q.command can’t be opened because it is from an unidentified developer". To solve this, open System Preferences – Security and Privacy – General and press
[Open anyway] next to the message regarding the file. An alternative way of allowing the file to be executed is to open the file in TextEdit and saving it again. Then it will no longer have status as downloaded from the Internet.
As an alternative to the above procedure, Chrombox Q can be started by the following method:
qstart.min the folder
…/qq/variousand move it to somewhere in your Matlab path. Possible destinations may be found by starting Matlab and typing
qstart.mand edit the last line after the
runcommand so that it points to the file
qq_startscript(see example below).
qstartin the Matlab command window.
An example of
qstart.m is shown below:
Download the installation and unzip the archive
/home/yourname/CHROMBOX/QQ, This will be the Q-root folder
The shell scripts
linstart_q.sh stored in the Q-root folder can be used to start the program, if the file is executable and Matlab can be started with the terminal command
On Ubuntu you can use the following procedure to make
Allow executing file as program.
It should now be possible to start Chrombox Q by double-click on
linstart_q.sh and selecting the option
run in terminal. If you don’t get the
run in terminal option while double-clicking the file you will have to edit the preferences in the file manager. Choose
Edit in the menu for Files, thereafter
Preferences and select the
Behaviour tab. Select
Ask each time as the option for executable text files.
There is also a file
linstart_q_term.sh in the Q-root folder. The difference between
linstart_q_term is that
linstart_q runs the application disconnected from the terminal while
linstart_q_term runs in the terminal. Chrombox Q will continue to run if you close the terminal if it was initiated by
linstart_q, while it will close together with the terminal if it was initiated by
As an alternative to the above procedure you can also start Chrombox Q by
qstart.m as described for Mac computers above.
On all operating systems you can use the following procedure to start Chrombox Q.
Start Matlab in the regular way, so that the Matlab desktop is opened.
Change the current working directory of Matlab to the Q-root folder, either by the line showing the working directory or by browsing in the panel in the left side of the Matlab desktop.
You can now start Chrombox Q by one of the following methods:
qq_startscript.min the panel showing the contents of the working directory, right-click and select
run qq_startscriptin the Matlab command window.
In a minimized Matlab session (running in terminal without Matlab desktop) you can use the
cd command to set the working directory and
run qq_startscript to start the program.
qq_localsettingsfile in the Q-root folder.
qq_localsettings(.sdv or .csv) in an editor such as Notepad and edit the paths for raw data, etc, if necessary.
windowposis position of the window in fractions of the screen size. The two first numbers in the vector is the position of the lower left corner. As specified above the lower left corner is 10% from the bottom of the screen and 10% from the left. The height and width is 75% of the screen size. Ensure that the sums of numbers 1 and 3 and numbers 2 and 4 are less than 1.
defaultfoldersis set to 1 the program will use the standard setup for subfolders and it is not necessary to edit the paths even if they are not correct. If the parameter is set to 1 you will have to specify the location of each path for data and methods. Data can be read from other folders than the ones are specified. Folders can also be changed by using the
[Settings]option within the program.
versionrefers to the current version of the code. The parameter can also be updated from within the program.
Q-16-05should be placed in the folder
codein the Q root folder.
qq_localsettings.sdv(may also have .csv extension) that is found in the q root folder and update the version to the folder name of the new code. The part to be edited is shown in blue in the example below.
The part to edit in
qq_localsettings.sdv is between the two semicolons in the line shown below.
Alternatively, you may select the new code by the following procedure:
[Settings]button down in the right corner
[Save local settings]
On Mac (OS X) and LInux, first install Wine to be able to run NIST MS-Search and verify that you can run windows exe-files. Thereafter proceed as described for Windows below. On Mac, the installer for WineBottler is a convenient way to install Wine. On Mac you currently need the beta version (Q-16-05b) of Chrombox to use the NIST MS-Search.
NISTxxfolder with all its content) to a separate location, where
xxrefers to the library version, e.g. NIST05.
qq_localsettings.sdvfile or you can click
[Settings]down in the right corner and choose
[Paths / Version]. After editing the path to the NIST library you press
[Save local settings]. The edit field for the path will be yellow if the path is not valid.
autoimp.msdexists in the
NISTxx\MSSEARCHfolder, open it with a text editor (e.g. Notepad) and ensure that it points to an existing directory where you have write access.
Search NISTfrom the menu. This should give you the option to create a new
[Yes]to create the file. You will typically get a warning message saying “NIST MS database directory invalid.”. Ignore this and press
[OK]. Thereafter you will get the option to select the NIST MS database directory. Select the folder
[OK]. The program should open and display the search result.
The main purpose of this tutorial is to get used to the most basic functions in the program. Fatty acid methyl esters (FAME) in a reference mixture will be identified using an existing libraries and an already calibrated method.
[Load Data]which will take you to the main window for importing and converting raw data.
[Load]button takes you to the main window for loading raw data files
TUTORIAL_1-2folder. If a different folder is selected you can navigate by pressing the
[Dir Up]button or by right-click in a directory in the directory and files list. You can also scan for subfolders of the search path that contain the right data type by checking the
Scanbox next to the search path.
Tutorial-1in the table in the middle
[Load Sel.]and the file opens.
[Accept]that will take you back to the main window.
[Auto Basel.]in the main window.
After baseline subtraction the chromatogram should look like in Figure 1.3.
[Detect]in the main window and the Peaks window shown in Figure 1.4 will open.
[+]on the zoom line under the chromatogram. You can navigate through the chromatogram by the slider on the zoom line or by the
[>]buttons down in the right corner.
[Lock all]and thereafter
[Close]when the last peak has been quantified.
[Results]in the main window.
The results window is shown in Figure 1.6. .The first thing you have to do is to calculate retention indices for the peaks. The retention indices for fatty acid methyl esters are equivalent chain lengths (ECL).
Tut-1_calamong the stored calibrations. Press thereafter the
[Use Sel.]to activate the selected calibration.
[Calc. RI]to calculate retention indices for the compounds in the mixture. By selecting “Ret. Index” as label you can view the retention indices for each peak. The ECL scale uses the saturated FAMEs as calibration compounds. The saturated FAMEs 12:0, 14:0, 15:0, 16:0, 17:0, 18:0, 20:0, 22:0, 23:0 and 24:0 should have ECL values close to integer values corresponding to the number of double bonds in the fatty acid chain. You can also choose to use retention index as x-axis instead of retention time by selecting the scale on the zoom line.
[Settings]on the library line. Verify that
Z_BP-20is selected as search library. You can also add
HI-2009if it is available. Check that
Gaussian functionis selected under
Match retentionand that the
intervalis set to
0.9. Press thereafter
[Close]and the libraries will be loaded to the memory.
[>]. This will show the mass spectrum of the compound.
[Search Lib]to search the library. This will take you to the Identify window shown in Figure 1.7. The figure shows the results for the third peak (14:1 n-5).
The compound list shows the 40 best matches from the library. The correlation plot shows similarity between the spectrum from the chromatogram and the library spectra. Ideally, all masses should be near the diagonal blue line.
The match plot shows calculated scores for the compounds in the compound list in decreasing order. Compounds with the same identity as the spectrum selected in the list (the one with highest score by default) are shown in red. Other compounds are shown in blue. For a reliable identification the situation should be similar to the one shown in the figure, where all the best matches have the same identity, there is a clear difference to the next compound and the best matches are above the threshold value marked by the green field.
The info box show additional info, such as the difference in retention indices and the source of the matching compound. In the list of search parameters you can set how the library search should be performed, for instance if and how retention indices should be used. By selecting
Exclude instead of
Gaussian funct. you can see the effect of omitting the retention indices and match the compounds using only spectra.
[Accept]to accept the suggested or selected ID,
[Close]to return without identifying the peak and
[Reset]to delete the ID of an already identified peak.
If you are confident about the content of your sample you can also use the
[Search all] option that will identify all peaks with match above the threshold, without opening the Identify window.
[Report]button. Various report formats can be selected in the field next to the button. A report in will open if the
Openoption is checked or if
Auto openis set as default in the method.
[Close]to leave the Results window.
You can save your results by
[Save results] in the main window and recall the results by typing
* or any relevant search string, such as
Tut* in the search string field, and thereafter import the selected file by the
The purpose of this tutorial is to get used to peak detection and quantification in real samples, which usually have a more challenging peak pattern than reference mixtures. The sample is fatty acid methyl esters (FAME) from a fish oil. You will use the same method as in Tutorial 1.
Tutorial-1, load the file
Tutorial-2and perform baseline subtraction in the same way as explained in Tutorial-1.
After baseline subtraction the chromatogram should look like in Figure 2.1
[Detect]in the main window, which will take you to the window for peak region detection.
The challenge with this sample compared to the reference mixture is that there is large variation in the peak size. Some peaks are also partially overlapping. In the peak detection window the best way to detect the peaks in usually to start with a high threshold value and then gradually reduce the threshold.
[Detect]. The result should look approximately like in Figure 2.2.
[()]button on the zoom line and zoom in on the peak. Verify that the marked area look reasonable and check all peaks by stepping through the chromatogram with the
[Lock All]. This ensures that the already detected peak regions will not be affected by later detection of smaller peaks.
1 e5are appropriate values. When you edit the Y-scale the scale will be locked at this level. You can toggle between locked mode and auto-scaling by the
[Auto]buttons on the zoom line.
[Detect Peaks]. You can adjust the selected regions by right-click in field that mark the regions or by first left-clicking on the field and thereafter clicking on the red vertical lines that mark the beginning and end of a peak region. The three first peaks should look approximately as shown in Figure 2.3.
[Lock Visible]to protect the peaks. Be sure all the peaks you want to protect are visible in the window when you apply
[Lock Visible]. An alternative to
[Lock visible]is to lock the peaks one by one by
There are several alternative methods for adding and adjusting peak regions. If you left-click in the chromatogram above or below a peak while the shift button is pressed on the keyboard a peak region is added around the selected peak. Left-click in front or behind a single or a group of peaks while the
[ctrl] button is pressed on the keyboard adds a region with user defined width. Right-click on the area that marks a peak region provides a menu with several more options.
When the end of the chromatogram is reached there should be approximately 50 peaks. There are many minor peaks that are not detected at this level, but the threshold level is sufficient for this exercise.
[Accept]to return to the main window.
[Quantify]button to go to the Quantification window.
Contrary to the reference mixture in Tutorial 1, where all chromatographic peaks were resolved, you may now have overlapping or partially resolved peaks. You must therefore evaluate in each case whether the peak is pure or not. In cases with overlapping peaks you have four possibilities
[Peakwindow]button and split the peak
[Single Peak]button. If the
Accept singleoption next to the button is active the program moves to the next peak. If this is off you have the possibility to view the spectrum by pressing the
[Resolved S]button after quantification, but you must press the
[Accept]button to accept the solution.
At approximately 21 minutes there is a peak with a deviating peak shape with a shoulder to the left, but the two overlapping peaks have nearly identical spectra and there is no valley between them (Figure 2.4). The only option is therefore to quantify them as one peak or to jump to the peak window and split the peak manually.
The next peak cluster is found around 24.7 min. In this case there is a clear shoulder to the right, but there are also impurities in the main peak.
[Init Est.]you will get a plot similar to Figure 2.5 where the program tells where the purest spectra are likely to be found (the vertical lines) and which ions that may be selective (thick lines). The minor impurity under the main peak is not even partially resolved. The spectra can therefore not be used for resolution, but you may use the ions by selecting
Use Cfollowed by the
[Resolve]button and the suggested chromatographic solution is shown. If you inspect the spectra by pressing
[Resolved S]you will see that there are negative ions, which means that the solution is not good.
[Refine]button to refine the solution. You should then get spectra similar to the ones in Figure 2.7. By right-clicking in the spectra you can do a preliminary search in the libraries to check if the spectra match any known compounds.
[Resolved C]to check that the resolved chromatographic profiles make sense. The blue profile is flat and wide because the peak actually consists of two isomers (cis and trans 7-methyl-6-Hexadecenoic acid) that cannot be distinguished by mass spectrometry.
[Accept]to move to the next peaks.
At around 27.7 there is a new peak cluster that clearly consists of two peaks that are partially resolved (Figure 2.7). When peaks are only partially overlapping like this the best strategy is usually to use the estimates of the spectra for resolution.
[Init Est.]followed by
[Resolve]to quantify the two peaks.
[Accept]to move on to the next peaks.
At around 36.3 there is a new cluster of two severely overlapping peaks (Figure 2.8). In this case there are selective ions but the peaks are too overlapping to give good estimates of the spectra.
Use C, followed by
[Resolved S]to inspect the spectra. If you now press
[Refine]you will see that the spectra are confounded again (the masses 185 and 187 appear in the spectrum to the left). In some cases you may get better results by omitting the Refine procedure. It is therefore often necessary to evaluate the results before and after
Closureoption. Repeat the procedure
[Resolve]. Uncheck the
Closureoption and press
[Resolved S]to inspect the spectra again. Deselecting the
Closureoption may give you more accurate spectra, but in some cases you may get worse estimates of the chromatographic areas.
[Accept]and move on to the next peaks.
At approximately 48.4 min there is a new cluster with one large and one small peak. There is a quite good resolution between the peaks and this cluster is best resolved using the spectra.
[Refine](with Closure activated). The minor peak is from a furan fatty acid. You can verify this by doing a preliminary search in the library (right-click on the spectrum).
The remaining peaks are rather pure and can be quantified as single peaks.
[Close]to get back to the main window.
[Use Sel.]. Press thereafter
[Calc. RI]to calculate retention indices. Select
Ret. Indexas labels and check that the index for the highest peak is around 16.0. This is the 16:0 FAME, which has ECL value of 16 by definition.
[Settings]and check that you have activated the same libraries as in Tutorial 1, that retention scale is retention index, and that
Match Retentionis set to
Retention index. Press
[Close]and the libraries will be loaded to memory.
[Search All]button. It may still be necessary to check the identities of the peaks. If any labels are marked orange it means that a compound was identified twice. Large peaks may be skewed and get inaccurate retention indices.
[Search Lib]. In the Identify window, select
Retention matchand accept the result if it is correct. Repeat for the other peak.
[Report]to report the results, which should look approximately as in the table below (with additional columns for peak width and asymmetry).
The purpose of this tutorial is to learn advanced baseline subtraction using CODA, building a retention index calibration from scratch, and use the calibration to identify compounds in a mixture of PAH.
Tutorial 3, load the file
ALKANESand return to the main window by pressing
The chromatograms show a dilute sample of every n-alkane from C9 to C40. The last compounds are completely hidden in the column bleed.
[Baseline]in the main window.
The window should look like in Figure 3.1. Important functions are CODA and the baseline finder. CODA [Windig et al. Anal. Chem. 68 (1996) 3602] is a filter for removal of ions that are basically found in the background. The baseline finder is a background subtraction function.
Thresh:(threshold) level of
0.8. This will remove approximately 320 ions of the original 526 ions in the raw data, but it has limited influence on the column bleed.
[CODA]after each step. You should see a gradual improvement in the background level as more ions are removed.
0.92you will see a dramatic reduction of the background when the ions from the column bleed are filtered away, and small peaks at the end of the chromatograms will be visible.
[BL Finder]to subtract the background of remaining ions.
It may be necessary to adjust the borders of the last peaks that is poorly separated from the noise.
[()]on the zoom line and zoom in on the peak using
[+]. Right click on the green field and select
move bordersto adjust the start and end of the peak. Repeat for the second last peak and scroll thereafter through the chromatogram by the
[<]button and adjust peaks if required.
[Quantify]in the main window and
[All single]in the quantify window. Press
[Close]when the last peak has been reached.
[Results] to open the results window.
[Settings] and make sure the following are set:
Store spectra in RAMoption should be selected. This usually speeds up library searches because the libraries do not have to be read from disk each time a search is performed.
Intervalshould be set to
90. This is 100 times higher than the interval used in the previous tutorials, because you will now use Kovats’ indices where the distances between homologous n-alkanes are 100, while the distance is 1 for the ECL scale used with FAME.
Rootshould be set to
2. This will take the square-root of all the spectra before they are compared, which will increase the influence of minor ions in the spectra. Negative signals in the spectra are also deleted when root is set higher than 1.
[Close]when settings are appropriate.
Select the first peak. This should be the C9 alkane with a visible molecular ion of 128.
[Search Lib]. The peak should be clearly identified as n-nonane. Press
[Accept] to accept the result.
Since the sample contains all n-alkanes from C9 to C40, the next peaks should be C10, C11, C12, etc. Identify these the same way as n-nonane.
As the chain length increases, the spectra will be more similar and the molecular ion may be weak or absent. For the last compounds you may have to look further down in the list to find the right compound. A way to avoid that is to follow the procedure below:
[Calc. RI]in the Results window. This will give you a temporary calibration where the next peaks can be identified by extrapolation.
[Search Lib]and select
Retention match. This should give you a clear result because retention indices are now applied in addition to the spectra.
[Calc. RI]and continue.
When the last compound is identified, press
[Calc. RI] again. You should then have a calibration that shows a fairly linear relationship between retention index and retention time (Fig. 3.4).
[Store] to store the calibration in the method
Close the window and press
Since you may need the calibration later you must also save the updated method with the calibration. Do this by selecting
[Settings] in the lower right corner of the main window. Press thereafter
[Save Meth.] followed by
[Load]button and import the file
[Baseline]to go to the baseline window. Press
[CODA]using the same parameters as last time and press thereafter
[Accept]to accept the solution and return to the main window.
[Detect]to go to the Peak detection window.
[>]button and check that starts and ends of the peaks are properly set. Adjust if necessary.
[Quantify] that will take you to the quantification window and quantify the peaks.
There are several overlapping peaks. Proposed solutions are given below:
[Resolve]button followed by
[Peakwindow]button that will take you back to the Peak detection window. Press
[Split Select]to split the peak. Press thereafter
[Accept], which will take you back to the quantification window. You can now quantify the cluster as two single peaks.
[Resolve]and splitting the peak in the peak window will work. Using
[Resolve]is usually the simplest solution.
[Resolve]button and one isolated peak that can be quantified as single. The other option is to press
[Resolve]with all three peaks in the cluster, thereafter right-click on the profile with two peaks. Choose
Select split position, place the axis-cross in the valley and press the left mouse button. This will give you three peaks (as shown in figure 3.5). Note that if you use
[Refine]before the peak splitting you must turn off the
Unimod(unimodality) option, since this option forces profiles to have only one maximum.
[Close] when the last peak/cluster is quantified.
[Results]button in the main window
[Use Sel]. Press thereafter
[Calc RI]to calculate retention indices for each peak. Change the labels to
[Settings]button and to the following: Select
POP-Rxi-1, which is the right library for the applied column, as the only library in the
Search inlist. The library contains spectra and retention indices of various organic environmental pollutants.
Match retentionis set to
Gaussian function, that
Retention scaleis set to
Retention Index, that
Spectr. Searchparamis set to
MF1: Correlationand that
Intervalis set to
90. Close the settings window.
[Report]button with the options
Open. Inspect your report to verify that all peaks are different PAHs. The list of expected compounds is shown in Table 3.1.