University of Chicago:NMR Manual/V1S3

Processing 3D Data
3D Datasets present no great challenge when processing. Just as one might suspect, the spectroscopist converts the data to nmrPipe format, looks at the first increment to determine F3 phasing, edits a script that performs the processing, then executes the script. Note that the data manipulation takes significantly more time to execute than for 1D and 2D data, but this imposes no great burden you.
 * 1) Convert the data
 * 2) *First, cd to your spectrum’s .fid file and ensure that you see the file “fid”. Sometimes 3D data is large enough that people compress it, in which case you’ll see a file like “fid.gzip,” in which case you’ll need to uncompress your fid. Before starting, you should ensure you have the following scripts (or ones like them) in your directory:
 * 3) **process2D3.com (processs 1st 2D plane of a 3D spectrum)
 * 4) **process3d1.com (processes t1xt2xt3 data into t1xF2xF3 data)
 * 5) **process3d3.com (processes t1xF2xF3 data into F1xF2xF3 spectrum)
 * 6) **process3d_lp2.com (optional - processes t1xt2xt3 data into F1xF2xF3 spectrum with linear prediction in t1 and t2 dimensions – if using this, the process3d1 and 3d3 scripts are unnecessary.)
 * 7) **pipe2view_3d.com (converst 3D nmrPipe data into 3D nmrView data)
 * 8) *Like converting 2D data to nmrPipe format (Section 2)D), you can either type “varian” to call up the conversion interface, or you can type “nmrDraw” to start the larger nmrPipe program, right-click on the “Proc” menu button (Figure 3), then select “Convert Varian.” You’ll see the familiar initial GUI (Figure 4). This time, when you click “Read Parameters,” all three columns will remain and meaningful data will appear: [[Image:NMRUG_3D_convert1.gif|thumb|none|700px|Figure 18. "Varian" conversion utility after reading parameters for a 3D dataset (hnco).]] Then change the relvant parameters as you normally would, making sure your Center Position frequencies, in ppm, are correct and consistent with the others in your dataset: [[Image:NMRUG_3D_convert2.gif|thumb|none|700px|Figure 19. Varian conversion utility, after entering correct parameters for this dataset (hnco, whose 13C range center on C'=O carbons ~175 ppm).]] Once your parameters are entered, go through the same procedure you would for a 2D spectrum: clear the script, update it, save it as “fid.com,” then execute it. [[Image:NMRUG_3D_convert3.gif|thumb|none|500px|Figure 20. Xwindow after converting varian data to nmrPipe format.]] This will create a folder full of 2D fids. There will be as many files here as there are complex (R+I) points on your z-axis (usually 15N): [[Image:NMRUG_3D_convert4.gif|thumb|none|500px|Figure 21. Folder and 2D FIDs created by conversion process.]]
 * 9) Process & phase the first plane.
 * 10) *You need to edit your scripts so the phase will be correct, just as you did with 2D spectra. To get your phase information, just investigate the first plane (test001.fid). You can either
 * 11) **start nmrPipe, read in the file test001.fid, and process it there, or
 * 12) **use a script to process the spectrum, then read the processed spectrum, test001.ft, into nmrPipe. Here’s a handy script to do this for you called process2d3.s: [[Image:NMRUG_3D_process2d3.gif|thumb|none|400px|Figure 22. process2d3.com, a script for processing the first plane of a 3D dataset.]] I usually choose option B because it involves less clicking. Once you have a processed spectrum read into nmrPipe, phase it in F3 (the 1H or HN dimension, which was F2 in a 2D spectrum), and record your p0 and p1 phase values, just as you would for a 2D spectrum (Section 2)F.m). Edit your script to add the numbers to the p0 and p1 values already in the script (which is why it’s handy to start with p0 and p1 of 0.0). Reprocess the spectrum with your new script and make sure the 2D spectrum looks OK. (i.e, like a normal 2D spectrum). If it all looks OK, then go ahead and enter your phasing parameters into your 3D script(s). SPECIAL NOTE: The script above (Figure 22) includes a line, shown commented out: nmrPipe –fn PS –rs –500Hz –sw \ This line is used to shift the spectrum in the F2 (13C) dimension by 500 Hz. When processing the spectrum originally, I had found that some peaks had “folded over”, i.e., they lay outside the sw of the acquired spectrum and were showing up as negative peaks near one edge of the spectrum. By “right-shifting” the FID before performing the FT, effected by using “PS –rs –500Hz”, the spectrum was shifted “downward” so that the peaks were all moved downfield by 500 Hz in the 13C dimension. In theory, “-rs –500Hz” should mean “right shift by negative 500 Hz,” which would be synonymous with “-ls 500Hz,” “left shift by 500 Hz.” In practice, the “-ls 500Hz” thing didn’t work for some reason, but the “-rs –500Hz” line did. Go figure. SPECIAL NOTE: for Varian’s HNCACB spectrum (and possibly others): The way this experiment is implemented, the 13C axis is flipped, but NMRPipe does not know this a priori. This requires that the processing script include a “-neg” modifier on the 13C FT line: [[Image:NMRUG_3D_process2d3_hncacb.gif|thumb|none|400px|Figure 23. Process2d3.com script for an HNCACB spectrum, which otherwise will flip the 13C axis.]] The serine and threonine beta carbons should be negative and in a narrow band at the bottom (high frequency), alpha carbons positive in the center and bottom, and beta carbons negative and at the top. If the 13C axis if flipped, the 2nd dimension’s FT transform line should read “FT –neg”.
 * 13) 3D processing with 2 scripts, LP in 15N only
 * 14) *The computationally simplest mechanism to generate a workable 3D spectrum is to process the 2D datasets with one script, then handle the third dimension with another script. Typically, you’ll be applying linear prediction to the 15N dimension to enhance resolution there. It is computationally trickier, but easier and more useful for the spectroscopist to use a single script that applies linear prediction on both 13C and 15N dimensions. This method is described in the following section and you may wish to skip ahead to it if you’ve got a fast computer with a capacious hard drive.
 * 15) **Edit your first script, typically called “process3d1.s”, to include your F3 phase parameters: [[Image:NMRUG_3D_process3d1.gif|thumb|none|400px|Figure 24. A process3d1.s script, which transforms the t1xt2xt3 dataset into a t1xF2xF3 series of 2D spectra.]]
 * 16) **Execute the script by typing “process3d1.s”. You should see something like this going on inyour X window: [[Image:NMRUG_3D_process3d1_a.gif|thumb|none|500px|Figure 25. X window during the execution of the process3d1.s script.]] When it’s over, your window should look like this: [[Image:NMRUG_3D_process3d1_b.gif|thumb|none|500px|Figure 26. X window after execution of script process3d1.s.]] You should now have a new folder entitled “ft” in your directory, and it should be full of processed 2D spectra: [[Image:NMRUG_3D_process3d1_c.gif|thumb|none|500px|Figure 27. The folder & files created by process3d1.s.]]
 * 17) **Processing the 15N dimension should require no editing of the process3d3.s script unless you wish to change the weighting function or linear prediction. Here’s a good script: [[Image:NMRUG_3D_process3d3_a.gif|thumb|none|500px|Figure 28. A good process3d3.s script.]]
 * 18) **In your X window, type “process3d3.s” to execute this script. This one can take a while to run: 5-20 minutes, depending on your computer. You should see A screen that looks like this during the processing: [[Image:NMRUG_3D_process3d3_b.gif|thumb|none|500px|Figure 29. An X window screed during execution of process3d3.s.]] When it’s done, you should see something like: You should also see new files ending in .ft3 in the ft folder: [[Image:NMRUG_3D_process3d3_c.gif|thumb|none|500px|Figure 30. An X window screed after execution of process3d3.s.]] [[Image:NMRUG_3D_process3d3_d.gif|thumb|none|500px|Figure 31. *.ft3 files created by process3d3.s.]] Each of these .ft3 files is a 2D plane (F2xF3, 1Hx13C) of the 3D spectrum. Note that there are more .ft3 planes than .ft2 spectra because of linear prediction in 15N.
 * 19) Processing 3D data using one script with LP in 13C and 15N
 * 20) *One drawback of the procedure above is you can only linear predict points in one dimension, usually 15N. Here, we employ a trick that enables you to perform LP in both 13C and 15N, thus giving you better resolution in both dimensions. The tradeoff is that it requires slightly more time to process, gives you larger datasets, and may leave you open to some artifacts if your spectrum is not well-resolved. Here is the script, process3d_lp2.s, that performs this operation: [[Image:NMRUG_3D_process3d_lp2_a.gif|thumb|none|500px|Figure 32. The process3d_lp2.s script, which accomplshes 3D processing and linear prediciton in t2 and t1.]] The first section you should edit as you would any 2D processing script, entering your phase and apodization parameters. The other sections may be edited, but there are some caveats, discussed below. In the second section, the 15N dimension is apodized, transformed, and phased. Zero filling is applied, but will be undone later. In the third section, linear prediction is applied to the 13C dimension, adding 78 points. (This spectrum was acquired with 50 complex 13C increments, so this will yield 128 points across the 13C axis.) The spectrum is then weighted, transformed, and phased. In the fourth section, the 15N dimension is made to revert back to its fid’s, then linear prediction is applied and normal processing carried out. The “HT” line specifies a Hilbert transform, which prepares the spectrum for inverse fourier transform. The next PS, FT, ZF, and SP lines all end with a “-inv” qualifier, signifying that their operation will be the inverse of what they normally do. For instance, a normal “SP –off 0.5 –end 1.0” statement would multiply an fid by a sine-bell curve. “SP –off 0.5 –end 1.0” divides its object by a sine-bell curve. This point is important, because we discovered we cannot use a normal sinebell curve to weight 15N when using this script. Using “SP –end 1.0” multiplies the last point by 0, so “SP –end 1.0 –inv” divides the last point by zero, making everything in the spectrum infinitely large. Thus, we use “-end 0.95” instead. After undoing the 15N dimension, then LP is applied, and so are the normal SP, FT, and PS. One other item of note here is that the dimension that gets undone must be undone in exactly the same way it was constructed. For instance, “SP –off 0.45 –end 0.95 –pow 1 –c 0.5” is applied in section two. Processing will go terribly awry if in section four a SP … -inv line is applied with any parameters different from those in section two. To execute the script, simply type “process3d_lp2.s” and go get a cup o’ coffee or something. this will take awhile, but it won’t involve any input from you. When it’s done, your X window should look like: [[Image:NMRUG_3D_process3d_lp2_b.gif|thumb|none|500px|Figure 33. On-screen results of executing the proces3d_lp2.s script.]]
 * 21) Examine your 3D spectrum
 * 22) *At this point, you must be dying of curiosity to see what your 3D spectrum looks like. Spark up nmrPipe and read in the spectrum. Remember to choose the “.ft3 3D” selection: [[Image:NMRUG_3D_view_a.gif|thumb|none|500px|Figure 34. nmrPipe selection of the 3D dataset.]] With the *.ft3 dataset highlighted, click the Read/Draw button. You may get something that looks like this: [[Image:NMRUG_3D_view_b.gif|thumb|none|500px|Figure 35. 1st plane of a 3D hnco spectrum, as seen when first opening the file.]] Yes, this looks funny. There are indeed both positive and negative peaks here, in this first 15N plane of the 3D spectrum. Don’t despair! These are just the tails of your 15N peaks, which ring positive and negative a little bit. To get a better idea of your relevant vertical scale, scroll up and down the 15N planes by clicking the up and down triangles next to the capital Z at the top of your window; they’re just below the “mouse” and “peak” buttons. Watch how the number next to Z changes as you scroll. This number specifies the plane you are in. Scroll up until you find a plane with a much stronger signal (Figure 35). You can view the 15N 1D trace for this peak by putting your mouse into Z-axis mode and placing the crosshairs on the peak. Do this by left-clicking “Mouse,” then selecting “Z) 1D Z-axis.” [[Image:NMRUG_3D_view_c.gif|thumb|none|500px|Figure 36. Processed 3D spectrum (hnco) exhibiting a strong, relevant peak and several weaker, irrelevant peaks.]] The yellow spectrum you observe is the 15N trace of the 3D spectrum at that 1H/13C frequency combination. In (Figure 35), the peak shown in the 2D 1H/13C spectrum show two strong 15N frequencies, indicating overlap in the 1H/13C spectrum that is resolved by going to the 3D spectrum. Note that the signal is actually quite strong and consistently positive when viewed along the 15N axis. You can adjust the vertical scale by clicking the “+” button in the upper right corner a few times and redisplaying the spectrum. Scroll around, and you’ll see that you can clearly distinguish the real signals from the 15N tail peaks: [[Image:NMRUG_3D_view_d.gif|thumb|none|500px|Figure 37. One 15N plane of the hnco depicted after adjusting the vertical scale.]] If this all looks OK, then go ahead and convert the file to nmrview format and go on your merry way.
 * 23) Convert the 3D nmrPipe spectrum to nmrView format.
 * 24) *This step is trivial. All you need is a new script for the conversion: [[Image:NMRUG_3D_pipe2view3D_a.gif|thumb|none|500px|Figure 38. The script pipe2view3D.s, which converts an nmrPipe 3D dataset into nmrView format.]] Go in to your X window spectrum directory and type “pipe2view3D.s”. This will effect the conversion in 20-90 seconds. At the end, you should see something like this: [[Image:NMRUG_3D_pipe2view3D_b.gif|thumb|none|500px|Figure 39. Your X window after executing the pipe2view3D.s conversion script.]]
 * 25) You are done, done done!