The current version of NMRPipe includes a macro "findShift.M" ...
this macro will attempt to align signals in a selected region
of an interferogram. After this alignment step, the
remainder of the data can be processed with the same functions
that would normally follow the first FT.
The macro works by trying a systematic range of possible shifts
to align a given row in the interferogram with the first row.
"firstShift" and "lastShift" specify lower and upper ranges of shifts to
test, in points, and "shiftStep" is the step size in points.
"shiftX1" and "shiftXN" are the limits of the signal region to use
for the alignment, with units "ppm" "hz" "%" or "pts".
An example of alignment using a reference signal at around 0ppm:
nmrPipe -in test.fid \
| nmrPipe -fn SP -off 0.5 -end 0.95 -pow 2 -c 1.0 \
| nmrPipe -fn ZF -auto \
| nmrPipe -fn FT -verb \
-out test.ft1 -ov
nmrPipe -in test.ft1 \
| nmrPipe -fn MAC -macro $NMRTXT/findShift.M \
-var firstShift -10 lastShift 10 shiftStep 0.1 \
-str shiftX1 0.3ppm shiftXN -0.3ppm \
-out shift.ft1 -ov
Quoting zhzhf007 <zhzhf007@...
> Dear all,
> Is there any way to compensate field drift by nmrpipe during processing
> 2D data?
> For solid-state nmr spectrometer typical lacks in field lock, and
> the filed might drift slowly during the long-time experiment.