Peaklist preparation for eNOE pipeline
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:
- NMRpipe peak peaking
- Transfer of manual or automatically generated assignments to the NMRpipe peaks
- Sequential assignment of NOESY spectra with different mixing times using NMRpipe
This tutorial requires following software:
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 N15NOESY.tab, C13NOESY_@ALI.tab and C13NOESY_@ARO.tab in the 02-PeakPeaking/ folder.
Transfer of assignments to the NMRpipe peaks
Create a fresh python environment
python -m venv venv
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
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 convert.py /path/to/tutorial/03-Assignment/N15NOESY.tab /path/to/tutorial/03-Assignment/N15NOESY_@POS_@FLYA_asn.peaks N python convert.py /path/to/tutorial/03-Assignment/C13NOESY_@ALI.tab /path/to/tutorial/03-Assignment/C13NOESY_@ALI_@FLYA_asn.peaks C_@ALI python convert.py /path/to/tutorial/03-Assignment/C13NOESY_@ARO.tab /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 N15NOESY_asn.tab, C13NOESY_@ALI_asn.tab and C13NOESY_@ARO_asn.tab 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 series3D_N.com for sequential assignment of the nitrogen spectrum with following content:
#!/bin/csh 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 = N15NOESY_asn.tab echo ----------------------------------------------- echo Performing analysis by Fourier interpolation. echo Updated peak table will be series.tab echo /bin/rm -f series.list foreach i ($specList) echo $i >> series.list end seriesTab -in $inName -list series.list -ndim 3 \ -out series.tab -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
csh prepare nmrPipe ./series3D_N.com
This will create the series.tab file. Rename it to the series_N.tab and remove 2 lines from the header:
NULLVALUE -666 NULLSTRING *
Repeat this step for the aliphatic and aromatic protons. Combine all 3 series in series_all.tab files by keeping only one header. This combined series file can be directly used for ENORA and multi-state structure calculations.