NMRPipe Demonstration Data and Files

NMRPipe Logo
File DateSize Content
NMRPipe_aug2019.pptx    Aug 5, 2019    52,214,826 bytes     Recent Lecture Slides
NMRPipe_NUS_v46.pptx    Aug 5, 2019    52,214,826 bytes     Non-Uniform Sampling (NUS) in NMRPipe
demo.tar    Mar 1 2024    1,601,157,120 bytes     Demo Data

NMRPipe Demonstration Data Contents

  • demo/gb3
    Example 2D HN data to introduce basic processing, display, and peak detection with NMRPipe. Example scripts include:

    • Conversion of time-domain data from spectrometer format to NMRPipe-Format.
    • NMRPipe pipeline scripts for 2D Fourier processing.
    • Processing schemes for extrapolation using Linear Prediction (LP), as well as by the methods IST and SMILE.
    • Resampling conventional uniformly-sampled data to generate NUS-style data for testing and demonstration purposes.
  • demo/hnco
    Example 3D HNCO data to introduce basic processing, display, and peak detection with NMRPipe. Example scripts include:

    • Conversion of time-domain data from spectrometer format to NMRPipe-Format.
    • NMRPipe pipeline scripts for Fourier processing the first XY or XZ 2D plane of 3D data.
    • NMRPipe pipeline scripts for 3D Fourier processing.
    • Alternative examples of spectral processing using the basicFT2.com and basicFT3.com scripts. These scripts can perform full processing schemes with a single command, or automatically generate the corresponding NMRPipe pipeline scripts.
    • 3D Processing Schemes for: Linear Prediction (LP), Maximum Entropy Reconstruction (MEM), Maximum Liklihood Frequency Map (ML), and NUS Zero Fill (applying NUS reconstruction methods to conventional data as an alternative to LP).
    • Resampling conventional uniformly-sampled data to generate NUS-style data for testing and demonstration purposes.
  • demo/relax
    Example of Pseudo-3D processing and quantification, in this case a 2D relaxation series.
  • demo/jmod
    Example of Pseudo-3D processing and quantification, in this case a 2D J-modulated series.
  • demo/dosy
    Example of 2D Diffusion Spectroscopy (DOSY) processing, display, and analysis.
  • demo/cbcaconh
    Some additional examples of 3D spectral processing, including linear prediction applied to two dimessions, Maximum Entropy Method, Maximum Likelihood Frequency Map Method, and Principal Component Linear Prediction. Scripts provided in this demo are similar to those in the demo/hnco data, described in more detail below.
  • demo/methyl4d
    Examples of 4D spectral processing, including linear prediction applied to three dimessions, and NUS Zero-Full (IST Reconstruction applied to conventional Uniformly Sampled data). A simple 4D spectral viewer script is included to display the results.
  • demo/nus
    Several examples of Iterative Shrinkage Thresholding (IST) reconstruction for 2D and 3D Non-Uniformly Sampled Data (NUS) as acquired on both Varian/Agilent and Bruker systems.
  • demo/valpha/prime
    An example of corrlated spectral viewing and strip display of related 2D and 3D triple-resonance spectra.
  • demo/talosn
    An example of the TALOS-N application for predicting protein backbone phi,psi and sidechain chi1 angles from chemical shifts.
  • demo/spartaplus/ubiq
    An example of the SPARTA+ application for predicting protein backbone chemical shifts from structure.
  • demo/csrosetta
    Contains results of a CS-ROSETTA protein structure prediction based on sequence and chemical shifts for the protein DiNI. The results can also be viewed online at https://csrosetta.bmrb.wisc.edu/csrosetta?key=6106ea029d9c
  • demo/ubiq_sa
    An example of conventional structure determination with NOE, Dipolar Couplings, J-couplings, and TALOS torsion restraints.
  • demo/dchn
    An example of refining an existing structure with dipolar couplings.
  • demo/mfr
    An example of the NMR homology search method called Molecular Fragment Replacement (MFR). This example uses a combination of dipolar couplings and chemical shifts to determine the fold of ubiquitin, without use of NOE distance data.
  • demo/std
    An example of 1D Saturation Transfer Difference (STD) processing and analysis.
  • demo/titr
    An example of 2D-HSQC chemical shift titration processing and analysis, along with multivariate display of the results. An example of PostScript plot generation for the spectral series is also provided.
  • demo/soy
    An example of batch 1D processing and analysis, along with multivariate navigation of the results. In this example, three brands of soy dietary supplement are analyzed. An example of PostScript plot generation for the spectral series is also provided.
  • demo/gcsf
    2D HN series of Filgrastim samples under different conditions, with multivariate navigation of the results. The spectra, courtesy of Yves Aubin, are described in: Y Aubin, DJ Hodgson, WB Thach, G Gingras, and S Sauvé: Monitoring Effects of Excipients, Formulation Parameters and Mutations on the High Order Structure of Filgrastim by NMR. Pharm Res., 32, 3365-3375 (2015). An example of PostScript plot generation for the spectral series is also provided.

NMRPipe: Introduction

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, and it has been cited over 8,900 times.

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. Along the way, biomolecular NMR has expanded its emphasis from determination of individual structures to broader study of molecular interaction and dynamics, and methods of NMR protein-ligand screening and spectral fingerprinting are well-established. So, our software development in progress aims to make NMRPipe easier and more capable, in particular for processing and characterizing 1D and 2D spectral series.

Most every program and script in the NMRPipe system can be invoked with the -help argument to list the command-line arguments which can be used, for example:

   nmrPipe -help
If the help text is very long, it can be displayed a page at a time by a UNIX pipeline (in this case, redirecting standard error to the UNIX page-by-page viewing command more), for example:
   nmrPipe -help |& more
In the case of the nmrPipe program itself, help text for a specific function can be displayed by including the -fn option with the -help flag, for example:
   nmrPipe -help -fn FT 

Since it is script-based, NMRPipe is highly customizable. The following is a list of some things that the software can do; the sample data and tutorials for this NMR course will include examples of most of these facilities:

  • Interpret parameters for conversion of Bruker, Varian, and JEOL Delta format data, with conversion of time-domain data and adjustment for digital oversampling.
  • Process, rephase and display multidimensional data, including options rigorous inverse processing, Maximum Entropy and Linear Prediction extrapolation.
  • Reconstruction of Non-Uniform Sampling (NUS) Spectral Data, via Maximum Likelihood Frequency Maps, Maximum Entropy Deconvolution, and Iterative Shrinkage Thresholding (IST).
  • 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.
  • Since many NMRPipe facilities use tables for input and output, several utility applications for displaying, selecting, and adjusting table values are provided. PDB files can be implemented by many of these same utilities.
  • Matrix 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, visualize 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.
  • Applications for viewing and multivariate analysis of hyperspectral image data.
  • Schemes for exporting spectral data for visualization in a 3D virtual reality environment.

Some General Tips About Spectral Processing

  1. First Order Phase Correction, Folding, and First-point Scaling

    A delay in the acquisition introduces a first-order phase distortion. If there is no delay, no first order phase correction is required. Each delay of 1 dwell (1 point) introduces an additional 360 first order phase correction.

    Many current NMR pulse sequences are designed so that there is no delay in the directly acquired dimension. So, when phasing a spectrum interactively, its best to try phasing with P0 only first.

    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-like 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 applied.

    When possible, it is best to set up experiments with either exactly 0, 1/2, or 1-point delay. There are several reasons:

    • Phase correction values can be determined easily.
    • If the delay is not a multiple of 1/2 point, the phase of folded peaks will be distorted.
    • The hilbert transform (HT) is used, sometimes automatically, to reconstruct previously-deleted imaginary data for interactive rephasing or inverse processing. But, the HT can only reconstruct imaginary data perfectly if the phase is a multiple of 1/2 point.

    Data with P1 = 360 have the first point t=0 missing (i.e. 1 point delay). Since the first point of the FID corresponds to the sum of points in the corresponding spectrum, this missing first point can be "restored" by adding a constant to the phased spectrum. This can be done conveniently by automated zero-order baseline correction, as shown below:


          Delay: 0   point    P1 =   0   FID: Scale -c 0.5
          Delay: 1/2 point    P1 = 180   FID: Scale -c 1.0 
                                         Spectrum: Folded peaks have opposite sign
          Delay: 1   point    P1 = 360   FID: Scale -c 1.0
                                         Spectrum: Use "POLY -auto -ord 0" after FT and PS.
  2. Zero Filling

    As a general rule, each dimension in the time-domain should always be at least doubled in size by zero filling before Fourier Transform. If this is not done, the real part of the transformed result will not contain all of the information in the original complex time-domain data. This means that information will be lost when imaginary data is deleted during the usual transform schemes. So, in most every case, data can be suitably processed by Zero-Fill in auto mode:

          | nmrPipe  -fn ZF -auto \

    With no other arguments, this will double the size of the data by zero filling, and continue to zero fill if needed so that the final result has a power-of-two number of points. The power-of-two size is not a requirement, but it will usually make Fourier processing faster.

  3. Baseline Correction

    The default automated baseline correction (POLY -auto) should usually only be used when at least two dimensions of the data have been transformed, so that there is as much empty baseline as possible for automated detection. So, it is common practice to create a processing scheme like this, which processes the first two dimensions, then transposes the data to correct the first dimension:

          nmrPipe -in fid/test001.fid \
          | nmrPipe  -fn POLY -time                             \
          | 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 -left -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
    Zero-order automated baseline correction (POLY -auto -ord 0) is commonly applied to dimensions that have a missing first point (P1 = 360).

    Automated baseline correction should only be applied as needed.

    In most cases, only the directly-detected dimension, or dimensions with one-dwell delay (P1=360) need a baseline correction.

    NOTE WELL that cases for P1=0, P1=180, and P1=360 can all be handled by the proper combination of first point scaling and zero-order baseline correction. All other cases have the potential to introduce more difficult baseline distortions, as well as phase distortions for folded peaks. For these reasons, great care should be taken to set the acquisition delays to 0, 1/2, or 1 point whenever possible. This also eliminates the need to choose phase correction values manually, which can be very difficult with some spectra.

    In the case of digital oversampled data from Bruker instruments, the oversampling correction can result in baseline distortions which are especially problematic for homonuclear 2D and 3D cases or for many 1D 1H spectra. By default, oversampling correction is performed during conversion rather than during processing; when applied in this way, the correction is not ideal, although it has the convenience of creating a result which is ordinary time-domain data, with no artificial leading points. So, in many cases, baselines can be improved when needed by converting the data with the option Digital Oversampling Correction: During Processing selected in the bruker graphical conversion interface.

  4. Reversed Spectra, and Left/Right Swapped Spectra

    • Use FT -neg if a given dimension is reversed.
    • Use FT -alt if a given dimension is left/right swapped.
    • The -alt and -neg arguments can be used together if needed.

    NOTE WELL that FT -neg is NOT exactly the same as simply reversing the spectrum with REV. FT -neg is equivalent to REV followed by a one-point circular shift. So, if REV is applied instead, the PPM calibration will be off by one point.

    Of course, the -neg or -alt arguments should not be used if the data are not reversed or left/right swapped.

Common nmrPipe Processing Functions

The following is an alphabetical list of the most common nmrPipe processing functions used in the examples.

EXT Extract Region
Extracts a region from the current dimension with limits specified by the arguments -x1 and -xn; the limits can be labeled in points, percent, Hz, or PPM. Alternatively, the left or right half of the data can be extracted with the arguments -left and -right.

FT Fourier Transform
Applies a complex forward or inverse Fourier transform, with sign alternation for first half/second half rotated data (-alt) or complex conjugation for reversed data (-neg).

HT Hilbert Transform
Performs a Hilbert transform to reconstruct imaginary data.

LP Linear Prediction Extrapolation
By default uses forward LP method to extend the data to twice its original size via 8 complex coefficients. The number of predicted points can be adjusted via the -pred option, and the number of LP coefficients is specified by argument -ord. Mixed forward-backward LP is performed if the -fb argument is used. Mirror-image LP for data with no acquisition delay is performed if the argument -ps0-0 is used; mirror-image LP for data with a half-dwell acquisition delay is performed if the argument -ps90-180 is used.

MEM Maximum Entropy Reconstruction with Deconvolution
Applies Maximum Entropy reconstruction according to the method of Gull and Daniell: argument -ndim specifies the number of dimensions to reconstruct, arguments -pos and -neg are used to choose between all-positive mode and two-channel mode for reconstruction of data with both positive and negative signals. Argument -sigma specifies the estimated standard deviation of the noise in the time-domain. Argument -alpha specifies the fraction of a given iterate which will be added to the current MEM spectrum. Arguments -xconv -xcQ1 ... and -yconv ... etc. specify deconvolution in the form of an nmrPipe window function such as EM (exponential multiply) or an NMRPipe-format file which contains a deconvolution kernel. Other arguments can be used to optimize convergence speed, or to increase stability for reconstruction of data with high dynamic range.

POLY Subtract a Polynomial for Baseline Correction (frequency-domain)
Applies polynomial baseline correction of the order specified by argument -ord, via an automated baseline detection method when used with argument -auto. The default is a fourth order polynomial. The automated baseline mode works as follows: a copy of a given vector is divided into a series of adjacent sections, typically 8 points wide. The average value of each section is subtracted from all points in that section, to generate a "centered" vector. The intensities of the entire centered vector are sorted, and the standard deviation of the noise is estimated under the assumption that a given fraction (typically about 30%) of the smallest intensities belong to the baseline, and that the noise is normally distributed. This noise estimate is multiplied by a constant, typically about 1.5, to yield a classification threshold. Then, each section in the centered vector is classified as baseline only if none of the points in that section exceeds the threshold. These classifications are used to correct the original vector.

POLY Subtract a Polynomial for Solvent Suppression (time-domain)
When used with the argument -time, fits all data points to a polynomial, which is then subtracted from the original data. It is intended to fit and subtract low-frequency solvent signal in the FID, a procedure which often causes less distortion than time-domain convolution methods. By default, a fourth order polynomial is used. For speed, successive averages of regions are usually fit, rather than fitting all of the data points.

PS Phase Correction
Applies the zero and first order phase corrections as specified in degrees by the arguments -p0 and -p1. In the NMRPipe convention, the phase correction applied at the first point is P0, and the phase correction varies linearly to P0 + P1 at the last point. PS is commonly applied with the generic nmrPipe option -di which deletes imaginary data in the current dimension after processing.

SOL Solvent Suppression by Convolution Subtraction
Suppresses solvent signal by subtracting the results of a moving average filter with a default window of +/- 16 points.

SP Sine Bell Window with Adjustable Phase
Applies a sine-bell window extending from sinr(a*PI) to sinr(b*PI) with offset a, endpoint b, and exponent r specified by arguments -off, -end, and -pow, first-point scaling specified by argument -c. The default length is taken from the recorded time-domain size of the current dimension. By default, a = 0.0, b = 1.0, r = 1.0 (sine bell), and the first point scale factor is 1.0 (no scaling). In most examples, -off 0.5 is used to generate a cosine-like window which starts at height 1.0, while values for -end are usually around 0.95; settings of -end 1.0 are avoided, because this would result in a window function with the last point equal to zero. This effectively destroys information in one point of the given dimension, and also makes inverse processing problematic, since it will no longer be possible to divide data by the original window function.

TP 2D X/Y Transpose
Exchanges vectors from the X-axis and Y-axis of the data stream, so that the resultant data stream consists of vectors from the Y-axis of the original data.

ZF Zero Fill
Pads the data with zeros; the amount of padding can be specified by argument -zf, which defines the number of times to double the data size, or by the argument -size, which specifies the desired complex size after zero filling. By default, the data size is doubled by zero filling. Note that data should always be at least doubled by zero fill before FT, to prevent loss of information when imaginary data is deleted. The argument -auto will cause the zero-fill size to be rounded up to the nearest power of two for faster FT.

ZTP 3D X/Z Transpose
Exchanges vectors from the X-axis and Z-axis of the data stream, so that the resultant data stream consists of vectors from the Z-axis of the original data.

Conversion, Processing, Peak Detection: a example using 3D HNCO Data

Directory: demo/hnco

  • Use the bruker or varian command to create and execute a format conversion script.
  • Use nmrDraw to view time-domain data, process 1D vectors, and choose phase correction.
  • Use the Macro Edit text editor in nmrDraw to create and adjust a 2D processing scheme.
  • Use nmrDraw to inspect processed 2D data, adjust contour levels, or rephase selected 1D vectors.
  • Use the Macro Edit text editor in nmrDraw to create and and execute a 3D processing scheme.
  • Use nmrDraw to inspect processed 3D data, and perform 3D peak detection.
  • Adjust a 3D processing script to include automatic strip plot display.

Some scripts of note included in this demo directory:

Script NameDescription
fid.com Conversion of time-domain data from spectrometer format to NMRPipe format.
ft2.com NMRPipe pipeline script to process the first XY 2D plane in the 3D data.
xz.com NMRPipe pipeline script to process the first XZ 2D plane in the 3D data.
xyz.com NMRPipe pipeline script to process the full 3D data, and generate a strip display overview of the result.
xyz.lp.com 3D processing with Linear Prediction (LP).
xyz.mem.com 3D processing with Maximum Entropy Reconstruction (MEM).
xyz.ist.com 3D processing with Iterative Soft Thresholding (IST). This is a demonstration of NUS Zero Fill, which uses NUS reconstruction on conventional data as an alternative to LP.
alt_proc.com Example use of basicFT2.com and basicFT3.com general-purpose processing scripts, demonstrating single-command equivalents of processings scripts ft2.com, xz.com xyz.com xyz.lp.com, and xyz.ist.com.
uniform_to_nus.com    Generates NUS-style data by resampling the original uniformly-sampled data. It includes automatic generation of a simple uniform-random NUS schedule, resampling of the data, NUS reconstruction, and comparison of the original spectrum and the NUS spectrum.
scroll.com Generates strip plot overviews of processed 3D spectra. The strip positions are selected via automated peak detection of a 2D projection of the spectral data.

Pseudo-3D Analysis; Quantification of a 2D Relaxtion Series

Directory: demo/relax

  • proc.com
    Uses scripts fid.com and ft2.com below to convert and process each spectrum in the series, and to record the tau value with each spectrum. Note that this script sets the header of the result spectra via series.com so that the data are pseudo-3D.

  • fid.com
    The usual conversion script, but adjusted to take input name, output name, and tau value from the command-line. In the example script here, the tau value is set during conversion. The tau value recorded with a particular spectrum is included in the output of the "showhdr" command (only non-zero tau values are listed). Note that you can also set or change the recorded tau value of an NMRPipe FID or spectrum with the "sethdr" command, for example:
          sethdr ft/test001.dat -tau 8
  • ft2.com
    The usual processing script, but adjusted to take input name, and output name from the command-line. In the example script here, the "GM" window function is used to make the final lineshapes as close to Gaussian as possible, since the spectrum will later be fit to Gaussian lineshapes (see the section on GM below).

  • nmrDraw
    Pick the peaks in the first 2D plane with "nmrDraw"; create "relax.master.tab". Be sure to delete noise peaks, insert unresolved peaks, and to inspect and edit the CLUSTID values so that overlapping peaks all have the same CLUSTID value. Note well that the success of the analysis depends strongly on the quality of the peak table.

  • fit.com (autoFit.tcl)
    Use fit.com to fit evolution curves to the pseudo-3D data; this produces both a seriesTab result "aux.tab" and a lineshape fitting result "nlin.tab". This script also produces a simulated spectral series sim/test%03d.ft2 and a corresponding series dif/test%03d.ft2 containing the residual difference between the measured and simulated data. The simulated spectra and residual should be inspected carefully to evaluate the success of the lineshape fitting procedure.

  • model.com (modelExp.tcl)
    Create commands which fit each evolution curve, either using the seriesTab result aux.tab or lineshape fitting result nlin.tab. Produces output tables and postscript plots of each fitted evolution curve (this requires plotting program "gnuplot").

  • showEvolve.tcl
    This is an interactive alternative to model.com above. This script will display the evolution curves in nlin.tab on the screen one at a time, with an option to fit the current curve to an exponential model.


   nlin.tab         Results of pseudo-3D Gaussian fitting.
   sim/test%03d.ft2 Simulated Spectrum Series from pseudo-3D fitting.
   dif/test%03d.ft2 Residual Spectrum Series from pseudo-3D fitting.

   txt/fit*.txt     X/Y Tables for each evolution curve.
   mod/fit*.tab     Output tables of evolution curve fitting results.
   gnu/fit*.gnu     Gnuplot plot commands for each curve.
   plot/fit*.ps     PostScript output of the fit results.

   autoFit.com      Created by autoFit.tcl to run seriesTab and nlinLS. 
   modelExp.com     Created via modelExp.tcl to fit each evolution.

How to adjust a peak parameter in NMRDraw

The nmrDraw menu option Peak Detection/Edit enables simple editing of the peak table in memory. There must already be a current peak table, either from Peak Detection/Read or Peak Detection/Detect. When the Edit option is selected, the mouse can be used to insert or delete peaks, or to modify parameters. As with other mouse modes, the mouse button functions are given in the top border of nmrDraw.

NOTE! Once a peak table is edited, it should be saved using the Write option in the Peak Detection pop-up.

In the peak editing mode, the [Left] mouse button inserts a peak, the [Middle] mouse button can be used to adjust a peak value, and the [Right] mouse button will delete the nearest peak.

When using the middle mouse button to adjust a peak value, the value to be adjusted is the one selected for the label. By default, the peak INDEX number is displayed as a label. This can be changed through the Variables menu in the Peak Detection pop-up. For example, if the variable ASS is selected from the Variables menu, the existing assignments will be displayed, and these can then be modified. The CLUSTID value can also be displayed and modified this way.

After clicking the middle mouse button over the peak to change, type control-U to erase the existing value, then type in the new value followed by the enter key. Because of keyboard focus issues, you may have to move the mouse in and out of the graphics area before typing; using the -focus option of nmrDraw may help this.

The nmrDraw keyboard shortcut commands [ and ] can be used to toggle the display of peak labels on and off.

Non-Uniform Sampling (NUS) Reconstruction Using NMRPipe

Directory: demo/nus
(See Also: NUS in NMRPipe)

This collection of demo data illustrates how to use NMRPipe to convert and process Non-Uniformly Sampled (NUS) data. The purpose of NUS is to improve the spectral resolution that can be obtained with a given amount of measurement time. The data includes examples kindly provided by Robert Brinson and Luke Arbogast at IBBR, Jinfa Ying at the NIH, Prof. Stefano Ciurli at the University of Bologna, and Massimo Lucci at the University of Florence.

The demo data also provides examples of how to apply methods used for NUS reconstruction to conventional data, as an alternative to Linear Prediction. We call this approach NUS Zero Fill.

Note that there are several possible schemes for organizing NUS data during acquisition, and the schemes used for the demo data here might not be suitable for every type of NUS measurement.

In the demo examples, each individual spectral data directory will have a script fid.com to perform conversion steps, and a script proc.com to perform processing.

Some spectral data directories will have a script start.com that illustrates how to start the bruker or varian conversion interface for that particular data. This is for informational purposes only, and the start.com scripts are not used directly in the demos.

Data directories will also usually have a script clean.com which deletes all previous results.

The following directories have a script all.com which performs all the steps to convert, process, and display the the data. In the cases where conventional data is paired with corresponding NUS data, the conventional and NUS results will be displayed together:

Varian/Agilent Format:

  • Directory: demo/nus/varian_nus/indanone2d
    2D phase-sensitive HC spectra with and without NUS.
  • Directory: demo/nus/varian_nus/mag
    2D magnitude-mode spectra with and without NUS.
  • Directory: demo/nus/varian_nus/ubiq3d
    3D HN-NOE spectra with and without NUS.
Bruker Formats:
  • Directory: demo/nus/bruker_nus/2d_format
    2D phase-sensitive HC spectra with and without NUS.
  • Directory: demo/nus/bruker_nus/br_format
    A 3D Example measured with a NUS pulse sequence from Bruker.
  • Directory: demo/nus/bruker_nus/vc_format
    3D spectra with and without NUS,measured using pulse sequences from the NIH. The data are recorded in the same format as used in the br_format examples above, so the details of conversion are similar.
  • Directory: demo/nus/bruker_nus/vd_format
    Examples measured with and without NUS according to an older NUS scheme as implemented according to M. Karra, Ch. Fares, A. Gutmanas, and C.H. Arrowsmith. Spectra in this format require a different initial conversion step compared to the the schemes above, and a specific command-line argument bruker -vdlist ... is needed in order to generate the correct conversion scheme.

In addition, conventional data directories have a script nuszf_demo.com demontrating the NUS Zero Fill alternative to Linear Prediction. In each case, the ordinary Fourier transform spectrum will be displayed along with Linear Prediction and IST results:

  • Directory: demo/nus/varian_nus/indanone2d/indanone_hsqc_std.fid
  • Directory: demo/nus/varian_nus/ubiq3d/n15noe_std.fid
  • Directory: demo/nus/bruker_nus/2d_format/std
  • Directory: demo/nus/bruker_nus/vc_format/13.hnca_full
  • Directory: demo/nus/bruker_nus/vd_format/std
i Usual Steps for Converting and Processing NUS Data in NMRPipe

Non-Uniform Sampling (NUS) works by skipping parts of the measurement that would be acquired in a conventional experiment. The pattern of parts that are kept or skipped is called the sampling schedule.

The general steps in a usual workflow for reconstructing NUS data with NMRPipe are as follows:

  • Build and execute a conversion script which sorts and expands the NUS data from the spectrometer to generate NMRPipe-format time-domain data. At this point, the NUS data has zeros in the parts of the measurement that were skipped.
  • Confirm processing parameters such as phase correction by performing conventional processing with the usual NMRPipe facilities.
  • Use the processing parameters to run NMRPipe's NUS reconstruction scripts.

See NUS in NMRPipe for more details.

TALOS Demo: Chemical Shift Database Search for Phi/Psi Angles

See Also: the TALOS-N Web Site

Directory: demo/talosn

  • Use protein chemical shifts to predict phi/psi angles and chi1 sidechain angles.
  • View results of TALOS chemical shift database search.
  • Convert TALOS results to molecular restraint format.

To run the demo, use the following commands:

   cd demo/talosn


SPARTA+ Demo: Backbone Chemical Shift Prediction from Structure

See Also: the SPARTA+ Web Site

Directory: demo/spartaplus/ubiq

  • Simulate backbone chemical shifts from PDB structure.
  • View simulated vs observed chemical shifts.

To run the demo, use the following commands:

   cd demo/spartaplus/ubiq


Refinement of an Existing Structure with HN/N Dipolar Couplings

See Also: the DYNAMO Web Site

This example was kindly provided by Prof. Jaison Jacob, then at Vanderbilt University.

In this example, an existing structure is refined against a set of HN-N dipolar couplings. The initial structure agrees to only ~7 Hz RMSD with the dipolar couplings, but the refined structure to better than 1 Hz RMSD. Interestingly, the backbone of the refined structure is less than 0.3A RMSD from the initial structure; in this case, only a small change in the structure is needed to substantially improve the dipolar coupling agreement.

In order to use the DYNAMO structure calculation environment on a given molecular system, we first must use the tools of DYNAMO to create tables describing the covalent geometry of the molecules involved. Then we must create a PDB file with a complete set of atoms in the DYNAMO nomenclature. In this example, we start with a PDB file produced by some other molecular analysis software. So, in the first steps, we use the tools of DYNAMO to read the protein sequence information from the given PDB file, and to create a complete DYNAMO PDB file whose structure is refined to mimic the structure in the given PDB file. Then, this DYNAMO PDB file is refined using HN-N dipolar couplings.

The specific steps in the demonstration are:

  • Compute and view best-fit dipolar couplings given a PDB structure.
  • Create a DYNAMO structure environment based on given the PDB sequence. Initially, the DYNAMO PDB file contains random atomic coordinates.
  • Refine the initial random-coordinate DYNAMO PDB file so that its structure mimics that in the original PDB, using the heavy atom coordinates.
  • Refine this structure based on HN/N dipolar couplings.
  • Compute and view best-fit dipolar couplings of refined structure.
  • Compute coordinate RMSD between original and refined structures, and view the overlay.

To run the demo, use the following commands:

   cd demo/dchn


   more all.com

   (quit all graphs, quit rasmol)

Simple Conventional Structure Calculation with NOEs and Dipolar Couplings

See Also: the DYNAMO Web Site

  • Create a DYNAMO structure calculation environment from a protein sequence in a shift table.
  • Build a helix to use as an arbitrary starting structure.
  • Add experimental data tables: NOEs, J-couplings, Dipolar Couplings, TALOS torsions.
  • Compute a bundle of 10 structures.
  • Calculate and view the backbone overlay of all 10 structures.
  • Select the 5 best structures.
  • Calculate and view a backbone overlay of the best structures.
  • View the phi/psi trajectory of the best structures.

To run the demo, use the following commands:

   cd demo/ubiq_sa


   more README
   more init.com

   (exit rasmol)
   ls ubiq.gmc

   (edit simpleSA.tcl ... change the initial random number "54321")

   (exit rasmol)

   ls ubiq.gmc

   ov.tcl -r1 2 -rN 72 -ref 1ubq.pdb  -in ubiq.gmc/dyn*pdb
   rasmol overlay.pdb
   (exit rasmol)

   set goodList = (`pdbSelect.tcl -n 5 -noe 0.1 -pdb ubiq.gmc/dyn*pdb`)
   ov.tcl -r1 2 -rN 72 -ref 1ubq.pdb -in $goodList
   rasmol overlay.pdb

   scrollRama.tcl -pdb 1ubq.pdb $goodList

Molecular Fragment Replacement

Directory: demo/mfr

The MFR method determines elements of protein structure by finding small fragments (5-15 residues) in the PDB database whose simulated dipolar couplings and shifts match those measured for the target protein. These small homologous fragments can then be used in various ways to reconstitute larger elements of protein structure. This demo uses several types of dipolar couplings measured in two alignment media, which allows fragments to be assembled into larger structures of 10-50 residues or more.

The steps in this demo are:

  • Create a DYNAMO structure calculation environment from a protein sequence in a shift table.
  • Build a helix from the given sequence.
  • Conduct the MFR search using dipolar couplings and backbone shifts, excluding ubiquitin.
  • View the tensor magnitude with respect to residue (is tensor uniform for whole molecule?).
  • Form an initial "pretzel" structure from averaged MFR angles.
  • View Phi/Psi trajectories for MFR results compared to known structure.

To run the demo, use the following commands:

   cd demo/mfr


   more README
   more dObsA.tab

   more ext.com
   (exit rasmol)

   mfr.tcl -excl 1ubq -csThresh 2.5

   more mfr.tab
   plotTab.tcl -in mfr.tab -x A_DA -y A_DR
   plotTab.tcl -in mfr.tab -x D_RES1 -y A_DA B_DA -yMax 0.0

   rasmol init.pdb
   scrollRama.tcl -pdb ref.pdb init.pdb -mfr mfr.tab