NAME SP, EM, GM, TM, TRI, APOD - NMRPipe Window Functions. SYNOPSIS nmrPipe -fn SP [-off offset] [-end end] [-pow pow] nmrPipe -fn EM [-lb lbHz] nmrPipe -fn GM [-g1 invExpHz] [-g2 gaussHz] [-g3 gCenter] nmrPipe -fn GMB [-lb lbVal] [-gb gbVal] nmrPipe -fn TM [-t1 leftPts] [-t2 rightPts] nmrPipe -fn TRI [-loc apexLoc] [-lHi lHi] [-rHi rHi] nmrPipe -fn APOD [-qName apodName] [-q1 apodQ1] [-q2 apodQ2] [-q3 apodQ3] nmrPipe -fn [SP | EM | GM | TM | TRI | APOD] [-size aSize] [-start aStart] [-c fScale] [-one] [-hdr] [-inv] DESCRIPTION SP applies a sine-bell window with an adjustable offset, endpoint, and exponent. The offset and endpoint are speci- fied in units of pi radians. EM applies an exponential window. The exponential is speci- fied in terms of a Lorentzian line broadening in Hz. GM applies a Lorentz-to-Gauss window, which is a combination of an inverse exponential and a Gaussian. The purpose of the window is to replace the exponential decay of the origi- nal data with a Gaussian decay. The exponential term is specified as a Lorentzian line sharpening in Hz. The Gaus- sian term is specified as a Gaussian line broadening in Hz, and a center position (location of the Gaussian maximum). The Gaussian center position is specified as a value ranging from 0.0 (Gaussian maximum at the first point of the FID) to 1.0 (Gaussian maximum at the last point of the FID). GMB applies another kind of exponential/Gauss window, inspired by Bruker's Gaussian window function. TM applies a trapezoid window. The window is specified in terms of the lengths of the left and right edges of the tra- pezoid. The lengths are specified in points. TRI applies a triangle window. The window is specified in terms of the location of the triangle apex, and the heights of the window at the first and last points of the FID. APOD applies one of the windows above, as specified by command-line arguments or header values. It can be used to apply a window function which was specified during format conversion or during previous processing. In addition to function-specific options, each of the nmrPipe window functions provides the following features: Optional scaling of the first point of each FID. Automatic recording of window parameters and first point scaling in the data header during processing. Automatic adjustment of the default size of the window function to match the valid time-domain size recorded in the header. Optional extraction and use of window parameters recorded in the header, rather than from the command-line. An inverse mode, which divides by the window function and first point scale rather than multiplying by them. Options to adjust the size or starting point of the win- dow function via command-line arguments. SP OPTIONS -off offset (Q1) Specifies the starting point of the sine-bell in units of pi radians. Common values are 0.0 (for a sine window which starts height at 0.0) and 0.5 (for a cosine window, which starts at height 1.0). The default value is 0.0. -end end (Q2) Specifies the ending point of the sine-bell in units of pi radians. Common values are 1.0 (for a win- dow which goes to 0.0 height at the last point) and 0.95 (for a window which doesn't go all the way to 0.0). The default value is 1.0. -pow pow (Q3) Specifies the exponent of the sine-bell; Non-integer values are allowed. Common values are 1.0 (for ordinary sine-bell) and 2.0 (for squared-bell functions). The default value is 1.0. EM OPTIONS -lb lbHz (Q1) Specifies the exponential decay of the window in terms of a line broadening in Hz. Negative values will generate an increasing exponential window, which corresponds to a line sharpening. The line-broadening parameter is often selected to match the natural linewidth. GM OPTIONS -g1 invExpHz (Q1) Specifies the inverse exponential to apply in terms of a line sharpening in Hz. It is usually adjusted to match the natural linewidth. The default value is 0.0, which means no exponential term will be applied, and the window will be a pure Gaussian func- tion. -g2 gaussHz (Q2) Specifies the Gaussian to apply in terms of a line broadening in Hz. It is usually adjusted to be some- what larger (x 1.25 - 4.0) than the line sharpening specified by the -g1 option. -g3 gCenter (Q3) Specifies the position of the Gaussian function's maximum on the FID. It is specified as a value ranging from 0.0 (Gaussian maximum at the first point of the FID) to 1.0 (Gaussian maximum at the last point of the FID). It most applications, the default value of 0.0 is used. GMB OPTIONS -lb lbVal (Q1) Specifies an exponential factor, as used in the formula given below. This value is usually specified as a negative number which is about the same size as the natural linewidth in Hz. The default value is 0.0, which means no exponential term will be applied. -gb gbVal (Q2) Specifies a Gaussian factor, as used in the for- mula given below. It is usually specified as a posi- tive number which is a fraction of 1.0. The default value is 0.0, which leads to an undefined window func- tion according to the formula; for this reason, the Gaussian term is omitted from the calculation when -gb 0.0 is given. TM OPTIONS -t1 leftPts (Q1) Specifies the number of points in the left edge of the trapezoid window. The window function will increase from 0.0 to 1.0 over this point range. -t2 rightPts (Q2) Specifies the number of points in the right edge of the trapezoid window. The window function will decrease from 1.0 to 0.0 over this point range. TRI OPTIONS -loc apexLoc (Q1) Specifies the point location of the triangle function's apex on the FID. The triangle function will have a height of 1.0 at this location. -lHi lHi (Q2) Specifies the height of the triangle function at the first point of the window. The window will vary linearly from this height to 1.0 between the first point and the apex of the window. -rHi rHi (Q3) Specifies the height of the triangle function at the last point of the window. The window will vary linearly from 1.0 to this height between the apex of the window and the last point. APOD OPTIONS -qName apodName Specifies the name of the window function to apply, SP, EM, etc. -q1 apodQ1 Specifies the first parameter (Q1) of the selected win- dow function. -q2 apodQ2 Specifies the second parameter (Q2) of the selected window function. -q3 apodQ3 Specifies the third parameter (Q3) of the selected win- dow function. GENERIC OPTIONS -size aSize Specifies the number of points in the window function. The default value is the valid time-domain size recorded in the data header. -start aStart Specifies the starting point of the window function. The default value is 1, which means the window function starts at the first point of the FID. This option is intended for creation of composite windows by applica- tion of different functions to different regions of the FID. -c fScale Specifies the scaling applied to the first point of the FID, which influences the zero-order offset in the corresponding spectrum. The default value is 1.0, which means no first point adjustment is applied. A value of 0.5 is usually appropriate in cases where no substantial first-order phase correction will be applied. -one This flag influences the values used "outside" the win- dow function, in cases where the window size is smaller than the actual number of data points. By default, data values outside the window region are multiplied by zero when the window is applied. However if the -one flag is used, data values outside the window region will be multiplied by 1.0 when the window is applied. This flag is intended to assist creation of composite windows by application of different functions to dif- ferent regions of the FID. -hdr When this flag is used, default window parameters (Q1,Q2, and Q3) will be extracted from the data header, along with the first point scaling. This requires that all of these parameters have already been recorded, for instance during previous processing or format conver- sion (see EXAMPLES below). Additional command-line can be used to override values restored from the header. The window parameters stored in the data header can be viewed using the showhdr(1) program (showhdr -verb dataFileName). -inv When this flag is used, the inverse (1/window) of the selected window and first point scale will be applied. This option is intended for removing a previously-applied window in inverse processing schemes. This option should generally only be used on window functions which have no values close or equal to zero. In cases where the window does have a zero value, the inverse window is also given as zero. SELECTED FORMULAS In the following formulas, tSize is the number of time-domain points, which defines the length of the window function; w[i] is the window function from i = 0 (first point) to i = tSize - 1 (last point); sw is the sweep width in Hz. SP: w[i] = sin( PI*off + PI*(end-off)*i/(tSize-1) )^pow EM: w[i] = exp( -PI*i*lb/sw ) GM: w[i] = exp( e - g*g ), where e = PI*i*g1/sw g = 0.6*PI*g2*(g3*(tSize-1) - i)/sw GMB: w[i] = exp( -a*t - b*t*t ), where t = i/sw aq = tSize/sw a = PI*lb b = -a/(2.0*gb*aq) EXAMPLES Two ways of specifying an ordinary cosine bell: nmrPipe -fn SP -off 0.5 nmrPipe -fn SP -off 0.5 -end 1.0 Three ways of specifying an ordinary sine bell; note that this is the default function for SP: nmrPipe -fn SP nmrPipe -fn SP -off 0.0 nmrPipe -fn SP -off 0.0 -end 1.0 A cosine-squared bell: nmrPipe -fn SP -off 0.5 -end 1.0 -pow 2 A 60-degree shifted sine bell with scaling of the first point by 0.5; offset = 60/180, roughly 0.33: nmrPipe -fn SP -off 0.33 -end 1.0 A cosine bell which does not decrease all the way to zero; this window function can usually be inverted safely for inverse processing schemes, because its smallest height is about 0.16: nmrPipe -fn SP -off 0.5 -end 0.95 A cosine-squared roll-off function; the cosine function is set to span 100 points starting from point 257 in the data, so that the window region extends from point 257 to point 356. Since the -one flag is included, the data will be mul- tiplied by 1.0 outside of this region. Therefore, the result is a window which is uniformly 1.0 over points 1 to 256, and decays to 0.0 as a cosine-square over points 257 to 356: nmrPipe -fn SP -off 0.5 -pow 2 -start 257 -size 100 -one A typical usage of a Lorentz-to-Gauss window: nmrPipe -fn GM -g1 20 -g2 25 The following scheme shows window parameters (APOD, Q1, Q2, and Q3), first point scale (C1), and phasing (P0, P1) speci- fied during conversion. The values are then extracted and used during processing by including the -hdr option with processing functions APOD and PS: #!/bin/csh bruk2pipe -in hsqcn.ser \ -xN 2048 -yN 256 \ -xT 1024 -yT 128 \ -xMODE Complex -yMODE Complex \ -xSW 9090.91 -ySW 2500.00 \ -xOBS 600.138 -yOBS 60.8108 \ -xCAR 4.73 -yCAR 118.0 \ -xLAB HN -yLAB N \ -xAPOD SP -yAPOD SP \ -xQ1 0.50 -yQ1 0.50 \ -xQ2 0.98 -yQ2 0.95 \ -xQ3 2.0 -yQ3 1.0 \ -xC1 0.5 -yC1 1.0 \ -xP0 0.0 -yP0 -90.0 \ -xP1 0.0 -yP1 180.0 \ -ndim 2 -aq2D States \ -out hsqcn.fid -verb -ov nmrPipe -in hsqcn.fid \ | nmrPipe -fn SOL \ | nmrPipe -fn APOD -hdr \ | nmrPipe -fn ZF -auto \ | nmrPipe -fn FT \ | nmrPipe -fn PS -p0 22 -p1 0.0 -di \ | nmrPipe -fn EXT -left -sw -verb \ | nmrPipe -fn TP \ | nmrPipe -fn APOD -hdr \ | nmrPipe -fn ZF -auto \ | nmrPipe -fn FT \ | nmrPipe -fn PS -hdr -di \ -verb -ov -out test.ft2 In this inverse processing scheme, a spectrum is inverse transformed, and the SP window applied in a previous scheme is removed (SP -inv -hdr) in order to apply Linear Predic- tion (LP). After LP, the window is re-applied (SP -hdr): xyz2pipe -in lp/test%03d.ft3 -z -verb \ | nmrPipe -fn HT -auto \ | nmrPipe -fn PS -inv -hdr \ | nmrPipe -fn FT -inv \ | nmrPipe -fn ZF -inv \ | nmrPipe -fn SP -inv -hdr \ | nmrPipe -fn LP -ps0-0 \ | nmrPipe -fn SP -hdr \ | nmrPipe -fn ZF -auto \ | nmrPipe -fn FT \ | nmrPipe -fn PS -hdr -di \ | pipe2xyz -out lp/test%03d.ft3 -z -inPlace HEADER VALUES The nmrPipe window functions use the recorded time-domain size (NDAPOD) to establish their default length. When the -hdr flag is used, default window parameters are extracted from header values NDAPODCODE, NDAPODQ1, NDAPODQ2, NDAPODQ3, and NDC1. The header values NDAPODCODE, NDAPODQ1, NDAPODQ2, NDAPODQ3, and NDC1 are updated according to the values applied during processing. SEE ALSO nmrPipe(1), xyz2pipe(1), fdatap(1),