Processing non-uniformly sampled spectra with Multidimensional Decomposition

From Wiki

Jump to: navigation, search


Introduction and Prerequisites

This section gives a step-by-step manual to processing with the MDDGUI program, developed in the Arrowsmith lab (University Health Network and University of Toronto). It is designed for processing 3D spectra collected with non-uniform or non-linear sampling (NUS). The spectra can be collected either on Varian spectrometers with later versions of BioPack installed (click here for the relevant guide for Varian spectrometers) or on Bruker spectrometers running TopSpin (click here for the Arrowsmith protocol for NUS data collection on Bruker instruments).

The GUI package requires the mddnmr software developed by Vladislav Orekhov (Swedish NMR Centre, University of Gothenburg). Please contact him for your copy of the software. The GUI can be requested from the Arrowsmith group. You need Qt libraries in order to compile the GUI, or you can use the precompiled Linux version. Please refer to the installation README file for details. In addition to these two packages, you should have working nmrPipe and nmrDraw programs, as apodization, Fourier transforms, etc are performed by nmrPipe.

Processing with MDDGUI

Before the Multi-dimensional decomposition can be started, the raw data has to be converted through a number of steps to an appropriate format. The steps below are accompanied by the GUI screen shots. To move between the different stages of the processing, use "Next" and "Back" buttons. Refer to README file or tutorial for more specific instructions.

Step 1. Reshuffle FIDs

Rearrange the FIDs in the ser of fid file so that they are in correct positions for an imaginary case as if the data set was sampled regularly. The missing FIDs are replaced by zeros as dictated by the vdlist or procpar files. First, click the appropriate radio button, edit any file names if necessary, and click Insert Zeros before proceeding.
Figure 1a. Reshuffling FIDs in Bruker ser file.
Figure 1b. Reshuffling FIDs in Varian fid file.

Step 2. Convert to NMRPipe format

In this step there are a few parameters that the GUI might read wrong, especially with later versions of TopSpin. You can edit it as a simple bruk2pipe or var2pipe script. Pay extra attention to carrier and spectrometer frequencies, matrix sizes and acquisition modes (highlighted). As far as indirect dimensions' acquisition modes are concerned, it is important to distinguish between Echo-AntiEcho (Rance-Kay) and Complex/States-TPPI modes, as one can select within the group by adjusting flags for "nmrPipe -fn FT" command. In TopSpin2.1 we discovered that sweep width is sometimes not recorded in the acqu* files, therefore check that as well. Click Save, then Run.

Figure 2a. Making sure the highlighted parameters are correct
Figure 2b. Output of the conversion to nmrPipe format
NB! Make sure the spectrometer input is the reshuffled file (ser.sp or fid.sp)!

Step 3. Process the first plane

For the Bruker data, the first plane is regularly sampled while for Varian it is  not, which may make this step more difficult for Varian data. One only needs to adjust phasing, apodisation, region of interest and other parameters for the acquisition or directly detected dimension. The better the phasing, the better the convergence and the fewer the artefacts. It will be difficult to change the acquisition dimension parameters afterwards without redoing the calculation, so spend a few rounds with NMRDraw until you are happy and the phases are set properly (see highlighted section in the figure). As usual, click "Save", then "Run" each time you want to reprocess the plane. Button "nmrDraw" simply calls that program.

Figure 3a. Initial script to process the first plane of the spectrum.
Figure 3b. After the adjustment of relevant parameters.
Figure 3c. NMRDraw screenshot for phasing the acquisition dimension.

Step 4. Processing the acquisition dimension

Using the parameters from step 3, Fourier transform (FT) the acquisition dimension only for the whole data set and extract the region of interest. Note that the parameters are copied, but one can still edit them before proceeding.
Figure 4. Processing the acquisition dimension.

Step 5. Converting to MDDNMR format

Divide the the partially Fourier transformeded but still sparse spectrum into a number of regions overlapping by their acquisition dimension and convert these regions to MDDNMR format. This is the step before proceeding to calculations themselves. Make sure you select "Multiregion" radiobutton. Parallel computation is becoming obsolete, although is supported for now. Region width should be given in ppm

Figure 5a. Slicing the spectrum into overlapping regions and converting to MDDNMR format.
Figure 5b. Output of the conversion to MDDNMR format.

Step 6. Run MDD

As simple as that. Check README for more detailed instructions. The most important parameter is the number of components (per region), which should be the maximum number of HSQC/projection peaks . You might need to do some editing of the "" script depending on cluster availability (e.g., you may need to remove & from the mddnmr command if your calculation is running on a desktop). In the Arrowsmith group, we usually open a separate terminal window, login to our cluster and start the calculations from there. Do not close the GUI in the meantime. If you do, it is a bit tricky to restart from where you are.

Figure 6a. Parameters for the MDDNMR run.
Figure 6b. How to start the calculation on a cluster.

Step 7. Reconstructing the spectrum

Using the output of MDD, replace the zeros ( i.e. missing FIDs) by the reconstructed values. Here, if you had the GUI open through the previous step, the values will be filled automatically. If you did close it, restart it, go to step 5, choose "Multiregion" radiobutton, proceed to step 7 and fill out the values. That was the tricky part.

Figure 7a. Reconstructing the full spectrum.
Figure 7b. Output messages from the reconstruction step.

Step 8. Fourier transform of indirect dimensions

This is the final step of the processing. Here the task is purely NMRPipe. You may do to your indirect dimensions what you need to do - apodization, baseline correction, etc, etc. You may need to play around with "FT -auto" if your peaks are not making sense. That is mainly because the GUI can't easily distinguish between "Complex", "States-TPPI" and related modes. So you may need to change the FT flags to rectify the situation.

Correspondence of FT flags to Complex acquisition modes
FT flag(s) Aquisition mode Action(s) performed Effect(s) on spectrum
FT Complex none none
FT -alt States-TPPI sign alternation for every other point Left and right (top and bottom) halves swapped
FT -neg Complex-N negation of imaginaries spectrum inverted
FT -alt -neg States-TPPI-N sign alternation and negation of imaginaries spectrum halves swapped and the whole spectrum inverted

Finally, you don't need the GUI anymore, as you can edit the script to your liking with any text editor.

Figure 8. Finalizing the Fourier transform of the indirect dimensions.

Cleaning up

Once you have processed your spectrum, there are a lot of temporary files that are no longer needed. By deleting them you can sometimes free up to a Gb of disk space. If you leave the standard names for these files you can delete the following:

Bruker Varian
 > rm -rf data/ pdata/ mdd_out_* ser.sp ft/test_nus1.dat
 > gzip ser
 > rm -rf data/ mdd_out_* fid.sp ft/test_nus1.dat
 > gzip fid 

You should, of course, modify accordingly, if your file names are different. In this particular example, one could also delete the ft/aliNoesy.ft1 file. Note also, that if you perform the processing on the spectrometer, it is desirable to keep the pdata/ directory intact.

Software requests

  • MDDGUI package can be requested from the Arrowsmith group or by e-mailing (
  • Mddnmr software is developed by Vladislav Orekhov (Swedish NMR Centre, University of Gothenburg). Please contact him for your copy of the package.
Personal tools