Brief description of philosophy, commands, and functions of NMRPipe
NMR Data Processing > Overview
There are many softwares available today for processing NMR data and this task usually involves processing the time domain signal a frequency domain spectrum using Fourier transform along with different mathematical functions (see section 1.4 of this article for brief description of commonly used functions) to adjust the spectrum. The NMRPipe data processing program is widely used in the scientific community and consists of a number of functions that are link together via UNIX pipes . A second program called ‘nmrDraw’ (part of the NMRPipe package) is used to visualize and inspect the processed NMR data. The nmrDraw program provides basic functions such as drawing contours, vertical or horizontal traces, peak picking, and integration. The NMR data processing methods described in this TWiki are the routine procedures commonly used in the NESG community. For more detailed information on the functionality of NMRPipe, please visit the web pages of NMRPipe. The general workflow of NMRPipe is as follows:
Step 1: Converting the data from spectrometer format to NMRPipe format
Step 2: Time domain data inspection using nmrDraw
Step 3: Trial processing for initial phasing and applying mathematical functions
Step 4: Inspection of the trial processed spectrum via nmrDraw
Step 5: Final processing
Step 6: Spectra format conversion to Sparky, CARA, XEASY or NMRViewJ
NMRPipe (download information and user manual)
Brief descriptions of specific functions are accessible via nmrPipe –
‘nmrPipe –help’ will list most functions
‘nmrPipe –fn GM –help’ will give description of the GM function.
Linux (RedHat Linux/Fedora)
Mac OS X (10.3.4 and up)
SGI Irix (6.2 and up)
Sparc Solaris (2 and up)
Windows XP Pro with Microsoft Services for UNIX (SFU 3.5).
Programs of NMRPipe Package
- 'addNMR' Combine NMRPipe-format files by addition, subtraction, etc
- 'bruk2pipe' Convert Bruker time-domain data to NMRPipe-format data; see also the bruker command for creating format conversion scripts.
- 'bruker' Graphical interface for Bruker spectrometer format conversion; actually a script which invokes conv.tcl to produce a bruk2pipe conversion script.
- 'delta' Graphical interface for JEOL Delta spectrometer format conversion; actually a script which invokes conv.tcl to produce a delta2pipe. conversion script.
- 'delta2pipe' Convert JEOL Delta time-domain data to NMRPipe-format data; see also the delta command for creating format conversion scripts.
- 'nlinLS' General purpose multidimensional lineshape fitting of NMRPipe-format data. Usually invoked via autoFit.tcl.
- 'nmrDraw' Interactive interface for displaying NMRPipe-format spectral data, with facilities for processing, phasing, and peak detection. NOTE: nmrDraw (with upper-case D) is a script which runs the program nmrdraw with an appropriate collection of arguments; the nmrdraw program is generally NOT invoked directly.
- 'nmrPipe' Spectral processing of NMRPipe-format spectral data stream. Generally NOT invoked directly, but instead used in a UNIX pipeline via a C-shell script.
- 'pipe2xyz' Write the results of a 3D or 4D NMRPipe-format stream as an NMRPipe-format file series. Also used to write NMRPipe-format 1D-4D data stream as an NMRView-format file (See One Moon Scientific for more information about Bruce Johnson's NMRView)
- 'var2pipe' Convert Varian-format time-domain data to NMRPipe-format data.
- 'varian' Graphical interface for Varian spectrometer format conversion; actually a script which invokes conv.tcl to produce a var2pipe conversion script.
- 'xyz2pipe' Read a 3D or 4D NMRPipe-format input, to create a stream for processing via the nmrPipe program.
- 'zero2D' Set the all intensities of an NMRPipe-format file to zero; often used when creating simulated spectral data with simSpecND.
Commonly Used Processing Functions in NMRPipe
The processing functions describe here are the most commonly used for processing NMR spectra of protein. For the advance features, please visit the help pages of NMRPipe.
Solvent Suppression: to reduce solvent signals.
- ‘SOL’ solvent filter
- ‘POLY –time’ time-domain correction for solvent subtraction
Baseline correction: to remove dc offsets and baseline imperfection due to tilting, bowing, or rolling.
- ‘CBF’ DC correction
- ‘POLY –auto’ automatically generate a polynomial baseline correction
Apodization:to remove artifact and to improve S/N
- ‘EM –lb 1.0’ exponential line broadening
- ‘SP –off 0.5’ sine bell (offset by 90 degree, equivalent to cosine)
Zero fill the data: One can add zeros to the end of the fid so that there are more points in the final Fourier transformed spectrum. This will smooth the data and increase the resolution to some degree.
- ‘ZF –auto’ round up the number of points to the nearest power of 2
- ‘ZF –size 16384’ zero fills up to 16384 points
Linear prediction: instead of adding zeros, one can calculate additional points based on a mathematical analysis of the existing fid.
- ‘LP –fb’ uses default values and doubles the size of the fid to increase digital resolution.
- ↑ F. Delaglio, S. Grzesiek, G. W. Vuister, G. Zhu, J. Pfeifer and A. Bax: NMRPipe: a multidimensional spectral processing system based on UNIX pipes. J. Biomol. NMR. 6, 277-293 (1995)
Updated by Hsiau-Wei Lee August 17th, 2011