Re: [nmrpipe] SOL and POLY for solvent suppression
- Greetings all,
Here are some old notes about SOL and POLY -time ...
POLY -time vs SOL
As explained below, "POLY -time" approximates the time-domain
solvent signal by fitting it to a low-order polynomial, while
"SOL" approximates the time-domain solvent signal by smoothing
the FID so that only the low-frequency signals remain.
In both cases, the assumption is that the solvent signal
is at the center of the spectrum, so that it corresponds
to a low frequency in the FID.
If the solvent signal is not at the center, the data can be
temporarily frequency-shifted so that it is, as described below.
Since a low-order polynomial does not have many features,
it is only suitable for fitting a "simple" solvent signal,
i.e. a signal not much more complex than a one-cycle sine-wave.
For this reason, POLY -time works best when the solvent line
is narrow and very close to the center.
The SOL function it more tolerant of complicated solvent signals,
but at the cost of spectral distorsion, as described below.
This function works by fitting the time-domain signal to
a polynomial of low order; the idea is that this polynomial
should approximate the solvent signal, since it is a low
frequency. The fitted polynomial is then subtracted
from the original data.
In practice, it is too time-consuming to fit every point
in each FID. So, instead, as a time-saver, each
FID is divided into regions (nodes) of a given size, and
the average of each region is calculated. Then, the polynomial
is fitted to the averages instead of all the original data points.
You can use default settings, which seem to be okay in most cases,
with just the following:
nmrPipe -fn POLY -time
this is the same thing as using the following settings:
nmrPipe -fn POLY -ord 4 -avg -nw 16 -fx1 NW+4 -nc SIZE/(2*NW+1)
Here is the meaning of the parameters:
SIZE is the number of complex points, like "-xT" value in
-ord O (Polynomial order)
This is the order of the polynomial to fit and subtract.
-avg Means fit region averages instead of data points.
-nw NW (Node Width)
Means each region will be +/- NW points (2NW+1) large.
-fx1 M (First Point of Region to Fit)
Means that the first M points of the FID will not be
fit (in case they are distorted) although the final
polynomial will be subtracted from every point in the FID.
-nc NC (Node Count)
Means that the FID will be divided into NC number
of regions for fitting. Notice that the default
value of this parameter is adjusted according to
the current FID size, and also the selected node width;
the default value provides just enough regions so that
the averages don't overlap for the given node width.
If you are trying to optimize a result, you should experiment
with the -nw and -fx1 parameters. Larger -nw parameters should
mean that you attenuate a narrower frequency band. Smaller -fx1
parameters should mean better solvent modeling, and therefore
less residual baseline distortion. Of course, adjusting the
polynomial order is useful too; the higher the solvent frequency,
the higher the required polynomial order.
The parameters above are a little confusing at first for solvent
subtraction, since they are also intended for use in the frequency
domain for baseline correction.
This is an implementation of Dominique Marion's solvent suppression
by convolution in the time domain. Each FID is convolved with
a low-pass filter such as a box-car (moving average). However,
this convolution can't be computed accurately at the head or
tail of the FID, so the results are extrapolated by polynomial
fitting just at the head and tail. The extrapolated convolution
should then represent the low frequencies (water band); it is
subtracted from the original data.
This function includes the framework for other kinds of
solvent suppression, but they are not implemented;
so, the "-mode" parameter for the solvent filter mode
should not be changed.
So, in practice, the only parameter which is worth adjusting
is the filter length parameter "-fl". The larger this parameter
is, the narrower the solvent band suppression will be.
In both solvent suppression cases of SOL and POLY, the solvent
signal needs to be in the center of the spectrum for the
suppression to work properly. One way to do this "indirectly"
is by first-order phase correction of the FID, which is
equivalent to shifting the frequency domain. For convenience,
we've added right-shift and left-shift arguments to the
PS command for this sort of thing. So, for example,
if the solvent peak is 9 points away from the center,
you can use a scheme like this on the time domain data
to temporarily shift the solvent, suppress it, then
shift it back again:
nmrPipe -in dqcosy.fid \
| nmrPipe -fn PS -ls 9 \
| nmrPipe -fn SOL \
| nmrPipe -fn PS -rs 9 \
| nmrPipe -fn SP -off 0.5 -end 0.98 -pow 2 -c 0.5 \
| nmrPipe -fn ZF -auto \
| nmrPipe -fn FT \
| nmrPipe -fn PS -p0 255.6 -p1 78.0 -di -verb \
Hope this info is useful ...
On Mon, 1 Dec 2003, dark_isnewcdt wrote:
> This has been asked before but I think it's worth asking again in case
> anyone has any new insight.
> For solvent suppression, example scripts on the web seem to always
> use "SOL" or "POLY -avg -nw 16 -fx1 NW+4 -nc (SIZE/(2*NW+1)" (more
> commonly known as "POLY -time").
> Does anyone have advice on optimising these parameters, or whether it
> is worth time spent varying them?
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/