NMRPipe Processing Functions
ZTP: 3D Matrix Transpose.
ZTP exchanges the current X-Axis of the data stream with the
current Z-Axis, so that vectors from the Z-Axis of 3D and 4D data
can be processed. In most cases, it is not necessary to use the
ZTP function, because Z-Axis vectors can be accessed directly
via xyz2pipe -z ...
But, ZTP can be used to build processing schemes which process
three dimensions in a single pass, as shown below.
Each instance of the ZTP function requires enough memory to fit an entire 3D
matrix from the current data; this might not be possible for
every case depending on data size and system resources.
And, even when possible, it might not be efficient.
EXAMPLES
This is a variation on the typical 3D HN-detected processing scheme,
but in this case using ZTP to processes the 3D data without the need
to save an intermediate result. In this scheme, the order of the
dimensions is unchanged.
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 -left -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 \
| nmrPipe -fn TP \
| nmrPipe -fn ZTP \
| 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
|