NMRPipe: a Comprehensive Software System for Multidimensional NMR Applications
[See Also: The Big NMRPipe Reference Page]
NMRPipe
NMRPipe is a UNIX-based collection of programs and scripts for manipulating multidimensional
Nuclear Magnetic Resonance (NMR) Spectra. It is developed and maintained
by Frank Delaglio,
with contributions from the colleagues listed the illustration link here. A typical NMRPipe installation includes
related software such as NMRDraw, NMRWish, TALOS, DYNAMO, ACME, and MFR.
Groups can access
the latest versions of NMRPipe by
purchasing a support contract
from NMR Science Inc.
Background
NMRPipe has its genesis as a spectral processing engine, emphasizing multidimensional NMR applications.
The use of NMRPipe is noted in roughly 50% of the NMR structures accepted into the Protein Data Bank (PDB) since 2000.
Over the years, NMRPipe has been augmented as part of a plan to provide a set of tools under a common
framework for all aspects of biomolecular NMR. The key philosophy is a bottom-up approach to software and
application development, where simpler components are combined using standard scripting techniques (here,
UNIX C-Shell and TCL) to achieve complex goals. An early focus of the software was flexibility, since protein
NMR methods were rapidly changing and expanding, typical protein structure calculation projects took
months or even years, and no completely standard protocol was used. Now, computers are fast enough to process
3D spectra in seconds, experimental methods for high-throughput NMR structure determination are available,
and NMR structural biology is practiced by those who might not be completely familiar with details of
multidimensional signal processing. Also, 1D and 2D spectral series analysis are now common tools for
protein-ligand screening and characterization. In response, our current software development includes an emphasis
on automation and batch processing, and spectral series analysis.
|
Since it is script-based, NMRPipe is highly customizable. Some things that the software can do:
-
Interpret parameters for conversion of Bruker, Varian, and
JEOL Delta format data, with conversion of time-domain data
and adjustment for digital oversampling. General-purpose
format conversion tools are also provided.
-
Process, rephase and display multidimensional data, including
options for Maximum Entropy reconstruction and Linear Prediction
extrapolation.
-
Reconstruction of Non-Uniform Sampling (NUS) Spectral Data,
via Maximum Likelihood Frequency Maps and Maximum Entropy Deconvolution.
-
Rapid and Effective Automated Peak Detection for 1D-4D.
-
Extensive Line-Shape fitting functions, including direct fitting
of pseudo-3D data such as relaxation series. Lineshape profiles
can be either ideal frequency-domain models, or digital time-domain
models which match the experimental details of Fourier processing.
-
Vector decomposition of spectral and imaging data, and common
image processing and segmentation functions.
-
Create simulated multidimensional hypercomplex time or frequency domain data.
-
Create and draw strip plots, projections, and overlays. Latest options include
strip plots for multiple spectra, with drag and drop options to
adjust strip order.
-
Predict protein backbone angles based on backbone chemical shifts.
-
Simulate and display protein backbone chemical shifts based on
backbone angles.
-
Calculate J-couplings from Karplus parameters.
-
Simulate or fit and display Dipolar Couplings, visualize tensor parameters with respect to a PDB file.
-
Estimate protein alignment tensor parameters from measured dipolar
couplings without prior knowledge of the structure.
-
List or display backbone and sidechain angles,
vizualize ramachandran trajectory for one or more proteins or
fragments.
-
Analyze protein for solvent exposed surface, H-bonds, secondary structure and turn
classification.
-
Find coordinate or torsion RMSD
between two or more structures, form overlay.
-
Simulated annealing structure calculation, including NOEs,
J-coupling, torsion restraints, radius of gyration, pseudo-contact
shifts, and dipolar couplings.
-
Structure determination methods based on searching the PDB Database for NMR Parameter Homology, MFR
(Molecular Fragment Replacement).
Special applications developed using NMRPipe include:
-
Facilities to automatically scan a file system to locate and identify NMR data for
batch processing.
-
Automated 1D batch processing and plotting
-
Special facilities for
automated 1D STD (Saturation Transfer Difference) analysis.
-
Automated 2D HSQC batch processing.
-
Multivariate analysis to interactively characterize
similarities and differences in large spectral series.
-
Tools for extraction and analysis of chemical shift evolution curves.
|
The NMRPipe Spectral Processing Engine
The spectral processing engine of NMRPipe is based on the concept of UNIX filters and pipes.
A filter program is one which reads some input, processes it in some way, and produces an
output of the result. One example of a filter is the UNIX command sort, which reads lines of
text, and writes them sorted in alphabetical order. By analogy, we can implement individual spectral
processing functions in this way. For example, a filter program for Fourier Transform would
read a series of time-domain vectors as input, and produce a series of frequency-domain vectors as
output. A UNIX pipe is used to connect two of more filter programs in series, so that the
output of one program is used as the input to the next program in the series. This allows
sophisticated schemes to be constructed from a series of simpler steps. The steps can be organized
into a text file (a shell script) for easy manipulation and re-use. In the case of a spectral
processing scheme, the steps in the pipeline will be functions such as a window function
(here, SB, a sine-bell digital filter),
zero filling (ZF), Fourier transform (FT), and phase adjustment (PS). Since the programs in a pipeline operate
simultaneously, pipeline-based approaches are naturally parallel, and can immediately take
advantage of multi-CPU architecture.
Typical 3D Conversion and Processing of First 2D Plane:
#!/bin/csh
var2pipe -in ./hnco.fid -noaswap \
-xN 1024 -yN 128 -zN 64 \
-xT 512 -yT 64 -zT 32 \
-xMODE Complex -yMODE Complex -zMODE Complex \
-xSW 8000.000 -ySW 1500.000 -zSW 1650.000 \
-xOBS 499.843 -yOBS 125.707 -zOBS 50.654 \
-xCAR 4.773 -yCAR 175.019 -zCAR 118.019 \
-xLAB HN -yLAB CO -zLAB N \
-ndim 3 -aq2D States \
-out fid/test%03d.fid -verb -ov
nmrPipe -in fid/test001.fid \
| nmrPipe -fn SOL \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 2 -c 0.5 \
| nmrPipe -fn ZF -auto \
| nmrPipe -fn FT -verb \
| nmrPipe -fn PS -p0 43 -p1 0.0 -di \
| nmrPipe -fn EXT -x1 10.5ppm -xn 5.5ppm -sw \
| nmrPipe -fn TP \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 1 -c 1.0 \
| nmrPipe -fn ZF -auto \
| nmrPipe -fn FT -verb \
| nmrPipe -fn PS -p0 -135 -p1 180 -di \
| nmrPipe -fn TP \
| nmrPipe -fn POLY -auto \
-verb -ov -out test.ft2
|
Typical 3D Processing and Automated Strip Display:
#!/bin/csh
xyz2pipe -in fid/test%03d.fid -x -verb \
| nmrPipe -fn SOL \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 2 -c 0.5 \
| nmrPipe -fn ZF \
| nmrPipe -fn FT \
| nmrPipe -fn PS -p0 43 -p1 0.0 -di \
| nmrPipe -fn EXT -x1 10.5ppm -xn 5.5ppm -sw \
| nmrPipe -fn TP \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 1 -c 1.0 \
| nmrPipe -fn ZF \
| nmrPipe -fn FT \
| nmrPipe -fn PS -p0 -135 -p1 180 -di \
| nmrPipe -fn TP \
| nmrPipe -fn POLY -auto \
| pipe2xyz -out ft/test%03d.ft2 -x
xyz2pipe -in ft/test%03d.ft2 -z -verb \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 1 -c 0.5 \
| nmrPipe -fn ZF \
| nmrPipe -fn FT \
| nmrPipe -fn PS -p0 0.0 -p1 0.0 -di \
| pipe2xyz -out ft/test%03d.ft3 -z
proj3D.tcl -in ft/test%03d.ft3 -abs
peakHN.tcl -proj -in ft/test%03d.ft3 -out hn.proj.tab -hi Full
scroll.tcl -in ft/test%03d.ft3 -tab hn.proj.tab -hi Full
|
 |
 |
 |
NMRPipe includes facilities for automated and semi-automated extraction of acquisition parameters for
Bruker, Varian, and JEOL Delta spectrometer formats. There are also special facilities to compensate for
digital oversampling used in Bruker and JEOL data, and generic facilities to convert
data from most other sequential formats. The graphic application NMRDraw provides tools to visualize
time-domain data as 1D traces and 2D planes.
|
 |
 |
 |
NMRDraw also includes facilities for interactive 1D processing, rigorous inverse processing, creation of
multidimensional processing schemes, and interactive phasing and re-phasing of one or more vectors
simultaneously, using vectors extracted from any dimension of a spectrum or interferogram.
|
 |
 |
 |
Facilities for Linear Prediction extrapolation (LP) and Maximum Entropy Reconstruction (MEM) are
provided. The NMRPipe MEM implementation includes options J-deconvolution and for
reconstruction of Non-Uniformly Sampled data (NUS). Options for spectral matrix decomposition are also
available, and these can be adapted to many possible schemes for signal analysis,
reconstruction, and enhancement.
|
 |
 |
 |
Complete facilities for 1D-4D peak detection are available, as well as facilities for automated
spectral fitting of 1D-4D data, with special options for simplifying analysis of pseudo-3D
data such as 2D relaxation series. NMRPipe also includes tools for creating simulated
time-domain and frequency domain data, using input tables which supply peak parameters
in the form of positions, line widths, and amplitudes.
|
 |
 |
 |
NMRPipe includes general purpose fitting tools with Monte Carlo error estimation of the fitted
parameters. These are used in applications for relaxation series analysis,
extraction of couplings from quantitative J-modulated spectral series, and
analysis of chemical shift titration curves
|
 |
 |
 |
A central component of NMRPipe is NMRWish, our customized version of the TCL/TK window shell interpreter wish.
NMRWish provides an environment for constructing custom, targeted applications, and includes commands and options
for generating multi-window spectral graphics and PostScript output. It also includes a simple text-table database engine for
manipulating peak data, assignments, NMR parameters, and molecular structures. Shown here are special-purpose applications
for COSY proton-proton coupling measurement (ACME), and 3D 13C TOCSY assignment.
|
 |
 |
 |
NMRWish applications include strip display of 3D spectra. Shown here are examples of an automatically generated
overview of a 3D HN-detected spectrum, and a multi-spectrum viewing tool to assist in sequential assignment
Here, an earlier version of one such application is shown, along with a more recent refined version.
|
 |
 |
 |
DYNAMO is a system of software tools and scripts for calculating and evaluating molecular structures.
It includes a cartesian-coordinate simulated annealing engine, and facilities for NMR
homology search to assemble collections of molecular fragments which are consistent with
NMR observables (Molecular Fragment Replacement, MFR). The tools of DYNAMO are accessed via
NMRWish scripts written in the TCL/TK scripting language and include structure
calculation using NOE distances, torsion restraints, J-couplings, Radius of gyration, Pseudo-Contact Shifts,
and Dipolar couplings.
|
|