Peaklist preparation for eNOE pipeline

From CYANA Wiki
Jump to navigation Jump to search

In this tutorial we will prepare the input data for the eNOE pipeline (assigned series of NOESY spectra with different mixing times) from manually / automatically generated assignments of a single NOESY spectrum.

In summary, our approach consists of following steps:

  1. NMRpipe peak peaking
  2. Transfer of manual or automatically generated assignments to the NMRpipe peaks
  3. Sequential assignment of NOESY spectra with different mixing times using NMRpipe

Software installation

This tutorial requires following software:

  1. CYANA
  2. Python3

Data preparation

Create the root project folder tutorial/

mkdir tutorial
cd tutorial
mkdir 01-Spectra
mkdir 02-PeakPeaking
mkdir 03-Assignment
mkdir 04-Series
mkdir 05-eNORA
mkdir 06-SingleState
mkdir 07-MultiState

Process all NOESY mixing times and save them in separate folders in 01-Spectra/ folder.

NMRpipe peak peaking

Peak the nitrogen region, aliphatic carbon region and aromatic carbon region of the NOESY with highest mixing time with NMRpipe. Optimize the number of the peaked peaks by adjusting the threshold such, that the total number of peaks is 2 to 5 times larger than the number of peaks in previously manually or automatically generated NOESY assignment (because NMRpipe also peaks water and a lot of "false positives" along the diagonal, peak even more for the aromatic peaks as they are highly diluted by backbone nitrogen peaks). Save the peaks as, and in the 02-PeakPeaking/ folder.

Transfer of assignments to the NMRpipe peaks

Create a fresh python environment

python -m venv venv

Activate it

source venv/bin/activate

Install necessary packages

pip install numpy
pip install pandas
pip install tqdm
pip install argparse
pip install matplotlib

This step has to be done only once. When you are finished with python scripts you can deactivate it


And next time you can activate it again

source venv/bin/activate

Copy the peaked peaks to the 03-Assignment/ folder. Copy the assigned NOESY peaklist to the same folder. Save the transfer script and execute it sequentially for the backbone, aliphatic and aromatic protons.

python /path/to/tutorial/03-Assignment/ /path/to/tutorial/03-Assignment/N15NOESY_@POS_@FLYA_asn.peaks N
python /path/to/tutorial/03-Assignment/ /path/to/tutorial/03-Assignment/C13NOESY_@ALI_@FLYA_asn.peaks C_@ALI
python /path/to/tutorial/03-Assignment/ /path/to/tutorial/03-Assignment/C13NOESY_@ARO@NEG_@FLYA_asn.peaks C_@ARO --w1_shift=HEAVY_ATOM_SPECTRAL_WIDTH_IN_PPM

Change the path/to/tutorial and HEAVY_ATOM_SPECTRAL_WIDTH_IN_PPM to the actual path and spectral width in heavy atom value.

This will create assigned NMRpipe tab files, and in the 03-Assignment/ folder.

For quality control check that histograms of CYANA vs Pipe overlap for all 3 dimensions (for example file N_W1_overlay.png shows overlap between CYANA and Pipe shift histograms in the first dimensions for the nitrogen region of the NOESY).

Sequential assignment of NOESY spectra with different mixing times using NMRpipe

Copy assigned NMRpipe tab files to the 04-Series/ folder.

Create the NMRpipe script for sequential assignment of the nitrogen spectrum with following content:

set DX       = 1 
set DY       = 3
set DZ       = 2
set specList = (path/to/tutorial/01-Spectra/X/ft/HCNHnoesyHdirH%03d.ft3 path/to/tutorial/01-Spectra/Y/ft/HCNHnoesyHdirH%03d.ft3 path/to/tutorial/01-Spectra/Z/ft/HCNHnoesyHdirH%03d.ft3)
set inName   =
echo -----------------------------------------------
echo Performing analysis by Fourier interpolation.
echo Updated peak table will be
/bin/rm -f series.list
foreach i ($specList)
  echo $i >>  series.list
seriesTab -in $inName -list series.list -ndim 3 \
   -out -dx $DX -dy $DY -dz $DZ      \
   -xzf 64 -yzf 64 -zzf 64 -adx 0 -ady 0 -adz 0 -max -verb

Change the path to the spectra such that X, Y, Z are spectra ordered from highest to lowest mixing times. If necessary, add additional entries.

Run the series script

prepare nmrPipe

This will create the file. Rename it to the and remove 2 lines from the header:


Repeat this step for the aliphatic and aromatic protons. Combine all 3 series in files by keeping only one header. This combined series file can be directly used for ENORA and multi-state structure calculations.