Spectral processing

For the best measurement of peak heights across the myriad of NMR spectral analysis software, it is recommend to zero fill a lot - 8k to 16k would give the best results. This does not increase the information content of the spectrum or decrease the errors, it simply interpolates. Even if the NMR spectral software performs 3-point quadratic interpolation between the highest points to determine the peak height, the additional free interpolation will make the estimation more accurate.

Additionally, care must be taken to properly scale the first point as this can cause a baseline roll which will affect peak heights. A very useful description comes directly from the NMRPipe manual:

Depending on the delay, the first point of the FID should be adjusted before Fourier Transform. The first point scaling factor is selected by the window function argument -c.

If the required first order phase P1 for the given dimension is 0.0, the first point scaling factor should be 0.5. This is because the discrete Fourier transform does the equivalent of counting the point at t=0 twice. If the first point is not scaled properly in this case, ridge-line baseline offsets in the spectrum will result.

In all other cases (P1 is not zero), this scale factor should be 1.0. This is because the first point of the FID no longer corresponds to t=0, and so it shouldn't be scaled. If the scale factor is not set correctly, it will introduce a baseline distortion which is either zero-order or sinusoidal, depending on what first-order phase is required. When possible, it is best to set up experiments with either exactly 0, 1/2, or 1-point delay. There are several reasons:

Here is an example NMRPipe script designed for optimal relaxation rate extraction:


setenv FILEROOT $1
set PHASE=81.4

echo "\n# Fourier Transform (nmrPipe fid/*.fid to ft/*.dat)"
echo "# t2 phase is set to $PHASE"
echo "# t1 phase is set to 0.0\n"

nmrPipe -in fid/$FILEROOT.fid \
| nmrPipe -fn SOL \
| nmrPipe -fn GM -g1 15 -g2 20 -c 0.5 \
| nmrPipe -fn ZF -size 8192 \
| nmrPipe -fn FT -auto \
| nmrPipe -fn PS -p0 $PHASE -p1 0.0 -di -verb \
| nmrPipe -fn TP \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 2 -c 0.5 \
| nmrPipe -fn ZF -size 8192 \
| nmrPipe -fn FT -auto \
| nmrPipe -fn PS -p0 0.0 -p1 0.0 -di -verb \
| nmrPipe -fn TP \
| nmrPipe -fn POLY -auto \
| nmrPipe -fn EXT -left -sw \
| nmrPipe -out ft/$FILEROOT.dat -ov

The script is run by suppling the FILEROOT value as a command line option so if the script is called nmrpipe.sh and the var2pipe or bruk2pipe processed file R1_ncyc4.fid is in the fid directory, you would run:

$ ./nmrpipe.sh R1_ncyc4

The ft directory must exist for this script to execute. Different experiment specific options may be needed such as:

| nmrPipe -fn REV \
| nmrPipe -fn FT -neg \
| nmrPipe -fn PS -rs 2.5 \

The script should be changed for different phasing, first point scaling, a polynomial baseline correction added in the direct dimension or removed from the indirect dimension, solvent suppression removed or changed, and the window functions modified for optimal spectral quality. Each system and spectrum is different, so it is recommended that to find the optimal processing that each part of the script be removed and re-added one-by-one between processing and checking of the resultant spectrum. Note that the extraction at the end after the polynomial baseline correction in the indirect dimension is important as the baseline correction often displays a much better performance when the empty part of the spectrum is used in the calculation.

The relax user manual (PDF), created 2020-08-26.