rnmrtk

rnmrtk

rnmrtk is the main processing program of the Rowland NMR Toolkit. It is used to load data and perform most conventional processing, such as zerofilling, apodization, and Fourier transformation. It is used to save processed data or export it to a number of external formats.

Command-line feature in rnmrtk

If RNMRTK is invoked with a command on the command-line, it will carry out that command and exit immediately. If no command is present on the command-line, RNMRTK enters interactive mode as usual.

Alphabetical list of rnmrtk commands

Commands in rnmrtk

Arguments are listed following the command name. Optional arguments are inclosed in square brackets [ ]. The type of argument is signified by a letter following the semicolon. “i” denotes an integer, “f” a floating point number (one containing a decimal point), “l” a literal character string

The command parser normally reads input from the terminal. The “stream” command (see below) can be used to direct rnmrtk to process commands from a text file instead.

ABS [row;i]

Compute the absolute value of the data, which can be real or complex. If the values are complex then the results are too; the imaginary parts are set to zero. For two-dimensional data, the row parameter indicates that only a single row should be processed.

ADD dest-row;i src-row1;i src-row2;i [scale;f]

Add two rows together point by point, scaling the second row by the specified factor (the default is 1), and storing the result in a third row.

APPEND datafile;l

Append the contents of the workspace to the specified file. The data in the file must have compatible values for the size and type of each dimension. If the specified file does not exist, a new file will be created.

BC [row;i] [fraction;f]

Perform baseline correction along the current dimension by calculating the average of the last part of the FID, specified as a fraction of the number of points (the default is 12.5%), and subtracting that value from all the data. For two-dimensional data, the row parameter indicates that only a single row should be processed.

CHI0 row1;i row2;i

Compute the sum-of-squared-differences between two rows.

COM ...

Arbitrary comment text.

COMPLEX

Convert real valued data to complex by setting the imaginary part equal to zero.

CONJ [row;i]

Take the complex conjugate along the current dimension. For two-dimensional data, the row parameter indicates that only a single row should be processed.

CONVERT value;{i or f} [units;l]

Convert between units for the current dimension. In the time domain values are converted between points and seconds; in the frequency domain values are converted among points, Hz, and ppm. Possible values for the units keyword are: PTS, SEC, HZ, and PPM. The default is PTS if the value is an integer, SEC or HZ if the value is a floating point number.

COPY source;i destination;i

Copy the contents of one row into another. See MOVE.

DIM dim;i

Select a current active dimension.

DM [row;i] linewidth1;f linewidth2;f

Apply a double exponential window function. Effectively, Lorentzian line-sharpening (EM) of width linewidth1 and Gaussian line-broadening (GM) of width linewidth2 are applied simultaneously. Each data point is multiplied by

exp([t*linewidth1*PI] - [t*linewidth2*PI / sqrt(2 ln(2))]**2 / 2),

where t is the time value in seconds for a data point. For two-dimensional data, the row parameter indicates that only a single row should be processed.

DMNIC [row;i] linewidth;f

Apply a Nicolet/GE style double exponential window function, using a single linewidth parameter. This is equivalent to the command DM linewidth linewidth. For two-dimensional data, the row parameter indicates that only a single row should be processed.

DUPLICATE row;i

Copy the contents of the specified row into every row of the two-dimensional data set.

EM [row;i] linewidth;f

Apply an exponentially decaying window function. The linewidth argument is the width of the Lorentzian in Hz. Each data point is multiplied by exp(-t*linewidth*PI), where t is the time value in seconds for a data point. For two-dimensional data, the row parameter indicates that only a single row should be processed.

EXIT

Leave RNMRTK or stop reading the current stream file.

EXTRACT datafile;l [[dom-1;l] first-1;i last-1;i ... ]

EXTRACT datafile;l [[dom-1;l] first-1;f last-1;f ... ]

Extract the contents of a portion of the workspace to the specified file. The first and last limits for each dimension can be given in points (as integers) or in ppm (as floats). For any unspecified dimensions, the complete range is used. The order of the dimension domain names gives the order in which the dimensions will be stored in the file. Dom-1 will vary the slowest, dom-n the fastest. If dimension names are not specified, the order of storage is the same as in the workspace.

FFT [row;i] [NOFIX or scale;f]

Perform a forward Fourier transform of complex time-domain data. The first point of each row is pre-multiplied by the value of the scale parameter (the default is 0.5) unless NOFIX is specified.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

FIDPBC [row;i] order;i

Perform solvent suppression on an FID by polynomial baseline fitting. The order of the polynomial must be between 0 and 5. For two-dimensional data, the row parameter indicates that only a single row should be processed.

FWT [row;i] wavelet;l

Perform a forward wavelet transform of frequency-domain data. The wavelet parameter must be one of: D4, D6, S4, S5, S6, or S8, indicating the Daubechies or nearly-symmetric wavelets of the corresponding order. For two-dimensional data, the row parameter indicates that only a single row should be processed.

GAUSS row;i freq;f linewidth;f amplitude;f [phase;f] [ADD]

Generate a time series consisting of an Gaussian decay with the specified frequency, line width (FWHM), amplitude, and phase (default is 0). The ADD keyword indicates that the time series is to be added to the specified row; otherwise the time series replaces the data stored in the row.

GETCOL [row;{i or f} [R or I] [...]]

Synonym for GETROW.

GETROW [ADD] [row;{i or f} [R or I] [...]]

Retrieves the contents of the specified row or column and moves it to the beginning of the data set. The data originally stored there are saved, along with the NMR parameters, and the other dimensions are all set to length one. Not all the coordinates need to be given explicitly; missing initial entries are taken to be 1 R. If no coordinates are given, the ones from the previous invocation of GETROW will be used. If the coordinates are specified as integers they are taken as indices into the data array; if specified as floating point numbers they are taken as ppm values (or values in seconds for dimensions in the time domain). The optional keyword ADD indicates that the retrieved data should be added to the current contents of the beginning of the data set rather than replacing the contents. Thus, multiple invocations of GETROW in which all but the first specify ADD will provide a temporary data set equal to the sum of the specified rows. RESTOREROW returns the workspace back to its original status. If GETROW is called a second time with no intervening RESTOREROW (and the extent of all dimensions other than the current dimension are equal to one), it will automatically perform a RESTOREROW before proceeding.

GM [row;i] linewidth;f [shift;f]

Apply a Gaussian window function. The linewidth argument is the width of the Gaussian in Hz, and the shift parameter specifies the position of the maximum as a percentage of the data length. Each data point is multiplied by

exp(- [t*linewidth*PI / sqrt(2 ln(2))]**2 / 2),

where t is the time value in seconds for a data point offset by npoints * shift / 100. For two-dimensional data, the row parameter indicates that only a single row should be processed.

IFFT [row;i]

Perform an inverse Fourier transform of complex frequency-domain data. For two-dimensional data, the row parameter indicates that only a single row should be processed.

IFWT [row;i] wavelet;l

Perform an inverse wavelet transform of wavelet-domain data. The wavelet parameter must be one of: D4, D6, S4, S5, S6, or S8, indicating the Daubechies or nearly-symmetric wavelets of the corresponding order. For two-dimensional data, the row parameter indicates that only a single row should be processed.

LBC [row;i] baseline-file;l

Perform piecewise-linear baseline correction, using baseline points and weights from the specified file. The baseline file may be generated using the WRITE command in Seepln or using a text editor. The first line of the file contains a comment, the second line the number of baseline points, and each subsequent line specifies the index of a baseline point and a corresponding integer weight, which determines the number of adjacent points to be averaged together to obtain the baseline value. For two-dimensional data, the row parameter indicates that only a single row should be processed.

LOAD filename;l [dim;l ...] [START start;i] [NUM number;i]

Load an NMR data set. An optional list of dimensions can be given to specify the organization of the data in memory; the first dimension listed will be stored as the slowest, the next as the second-slowest, and so on. Unlisted dimensions will be stored as specified in the parameter file. The START and NUM parameters can be used to specify a partial subset of the data. The values refer to the index of the slowest dimension in memory, indicating where to start loading and how many points, rows, planes, or cubes to load. Data in a wide variety of formats can be loaded. There must be an accompanying parameter file, with the same name as the data file except that the last four characters are ".par". This is a text file, containing commands appropriate for SETPAR to define the NMR parameters. The file may optionally contain two additional lines, specifying the format and layout of the data.

The format line must be given as follows:

FORMAT {BIG-ENDIAN or LITTLE-ENDIAN}

{IEEE-FLOAT or VAX-FLOAT or INT-32 or INT-24}

[nheader;i [reclen;i nbegin;i nend;i]]

The nheader value specifies the number of header bytes in the data file. Reclen specifies the number of real points per record; if omitted the data are assumed not to be blocked in records. Nbegin and nend are the number of bytes of padding at the beginning and end of each record.

The layout line must have the form:

LAYOUT item-1 ... item-n

Each item is a specifier for a repeating sub-dimension in the data file. The items must be listed in order of stride length in the file, with the slowest sub-dimension appearing first. An item has the form Dn-s:p, where D is the domain name (T or F), n is the dimension number (1-4), s is the sub-dimension number (0-9), and p is the number of points in the sub-dimension. The -s sub-dimension specifier can be left out; it defaults to 1. Each sub-dimension can appear only once, and sub-dimension 0 is reserved to indicate the quadrature for a dimension: the number of points must be 1 if the dimension is real and 2 if it is complex.

Here is a sample layout line for a 256-by-1024 (complex) point data set with the real and imaginary parts split into the first and second halves:

LAYOUT T1-0:2 T1-1:256 T2:2048

The number of real points in T2 is 2048, alternating real and imaginary. The T1 half-planes are groups of 256 rows, and there are two T1 half-planes containing the separate real and imaginary values.

Note that the LAYOUT line indicates the order of the dimensions in the file, whereas the DOM line indicates the order of the dimensions in memory. If it is necessary to load a data file with the arrangement in memory different from that in the file, the order of the dimensions can be specified on the command line.

LOADGX filename;l [1D or 2D or 3D] [SPLIT or INTER] [dim;l ...] [START start;i] [NUM number;i]

Load a GX400 data set. The filename must end in .gxd and the corresponding .gxp parameter file must be present in the same directory. The parameters are interpreted as follows:

COMNT Experiment comment (underscores converted to blanks)

POINT Number of real points in the acquisition dimension

CLPNT Number of real points in the slow dimension

ACBLK Number of real points in the very slow dimension

FREQW Spectral width in the acquisition dimension

CLFRQ Spectral width in the two slow dimensions

OBFRQ Spectrometer frequency in the acquisition dimension

IRFRQ Spectrometer frequency in the two slow dimensions

The quadrature method is assumed to be States. The number of dimensions defaults to 2, but this can be overridden by specifying 1D, 2D, or 3D on the command line. In any case, the size of each dimension is checked in the parameter file: each must have more than one point.

The keywords SPLIT and INTER specify the arrangement of the real and imaginary parts of the data in the first dimension (they are ignored for one-dimensional data). For three-dimensional data, INTER is interpreted to mean that the real and imaginary parts are interleaved on a row by row basis: each set of four rows contains the RR, RI, IR, and II components.

An optional list of dimensions can be given to specify the organization of the data in memory; the first dimension listed will be stored as the slowest, the next as second-slowest, and so on. The START and NUM parameters can be used to load just a partial subset of the data. The values refer to the index of the first dimension, indicating where to start loading and how many points, rows, planes, or cubes to load.

LOADMAT filename;l [dim;l ...] [START start;i] [NUM number;i]

Read in data from a Felix .mat file. The data must be real only. An optional list of dimensions can be given to specify the organization of the data in memory; the first dimension listed will be stored as the slowest, the next as the second-slowest, and so on. The START and NUM parameters can be used to load just a partial subset of the data. The values refer to the index of the first dimension, indicating where to start loading and how many points, rows, planes, or cubes to load.

LOADSEC filename;l [SPLIT or INTER or PPFIX] [dim;l ...] [START start;i] [NUM number;i]

Load a version 2 section file. The keywords specify the arrangement of the real and imaginary parts of the data (they are ignored for one-dimensional data). PPFIX is the default; it indicates that the imaginary components of the data in the lower dimensions have been discarded, leaving only the imaginary part in the first dimension. An optional list of dimensions can be given to specify the organization of the data in memory; the first dimension listed will be stored as the slowest, the next as the second-slowest, and so on. The START and NUM parameters can be used to load just a partial subset of the data. The values refer to the index of the first dimension, indicating where to start loading and how many points, rows, planes, or cubes to load.

LOADVNMR filename;l [transmitters;l] [delays;l] [dim;l ...] [START start;i] [NUM number;i]

Read in data from VNMR-format FID and procpar files. Note that the Toolkit parser only recognizes filenames that contain a ".", so it may be necessary to refer to the data file as ./fid (for example). The transmitters and delays parameters are needed to provide information that is not included in the procpar file: which transmitter (or decoupler) is the carrier for each evolution time, and which delay variable corresponds to each evolution time. The transmitters parameter is specified as the letters TR followed by a list of transmitter numbers: 0 (the default) is the receiver, 1 is the first decoupler, 2 is the second decoupler, and so on. Thus, for a 3D experiment, TR31 would indicate that decoupler-3 is the carrier during t1 and decoupler-1 is the carrier during t2. The delays parameter is specified as the letter D followed by a list of delay variables. The default is that D2 is the delay for t1, D3 is the delay for t2, and so on; this would be written as D23. However, a pulse sequence that defined the D3 as the delay for t1 and D2 as the delay for t2 would be indicated as D32. An optional list of dimensions can be given to specify the organization of the data in memory; the first dimension listed will be stored as the slowest, the next as the second-slowest, and so on. The START and NUM parameters can be used to load just a partial subset of the data. The values refer to the index of the first dimension, indicating where to start loading and how many points, rows, planes, or cubes to load.

LOG [filename;l or OFF]

Record input commands in a logfile or turn off command logging.

LORENTZ row;i freq;f linewidth;f amplitude;f [phase;f] [ADD]

Generate a time series consisting of an exponential decay with the specified frequency, line width (FWHM), amplitude, and phase (default is 0). The ADD keyword indicates that the time series is to be added to the specified row; otherwise the time series replaces the data stored in the row.

MOVE destination;i source;i

Copy the contents of one row into another. See COPY.

NOISE [row;i] mean;f stddev;f seed;f [ADD]

Generate pseudo-random data values consisting of Gaussian noise with the specified mean and standard deviation. The ADD keyword indicates that the noise is to be added to the existing data set; otherwise it replaces the current data. For two-dimensional data, the row parameter indicates that only a single row should be processed. A typical value for mean is zero, which results in the noise being distributed evenly among positive and negative values.

NORMALIZE [row;i] [maxval;f [minval;f]]

Scale the data so that the maximum value is equal to maxval. The default for maxval is 10000. If minval is specified, the data are transformed linearly into the range between maxval and minval. For two-dimensional data, the row parameter indicates that only a single row should be processed.

NORMALIZE [row;i] SCALE factor;f

Scale the data by the specified factor (which must be nonzero).

For two-dimensional data, the row parameter indicates that only a single row should be processed.

ONES row;i [value;f]

Set all points in the specified row equal to the specified value (the default is one).

PCOSY reference-file;l scale;i

Subtract a reference FID from a P.COSY data set. The FID is first divided by the specified scale factor. This command can be applied only to two-dimensional data in which the T2 is the fast dimension. The data must be complex in both dimensions. If the reference-file name does not end in .gxd or .GXD, the reference data is interpreted as a one-dimensional native data set, such as would be produced by loading a 1D FID and then saving it.

PHASE [ABS] [FIRST] [row;i] {cphase;i [lphase;i] or cphase;f [lphase;f]}

Perform linear phase mixing in the current dimension. The phase correction can be specified as integers or floating point values. If the linear phase correction is not given, it defaults to zero. The ABS keyword indicates that the phases specified should be the final values; otherwise they are taken as the phase increments. The FIRST keyword indicates that the phase pivot point (used for linear phase correction) should be set to the initial point, rather than the center of the spectrum. For two-dimensional data, the row parameter indicates that only a single row should be processed.

POWER [row;i]

Compute the magnitude squared of the data, which can be real or complex. If the values are complex then the results are too; the imaginary parts are set to zero. For two-dimensional data, the row parameter indicates that only a single row should be processed.

PROJECTION (see XSECT)

PUTEASY basename;l spectrum-type;l

Store the real component of the data in EASY 8-bit and 16-bit formats. The output filenames are given by the basename together with .8, .16, and .param added on. The spectrum-type code should be one of COSY, NOESY, or TOCSY (the initial letter is sufficient), indicating the kind of experiment from which the data are derived.

PUTMAT filename;l

Write the real component of the data to a Felix .mat file.

PUTNMRPIPE filename;l

Write the real component of the data to a nmrPipe file. The data must be real-only.

PUTXEASY basename;l spectrum-type;l

Store the real component of the data in XEASY 16-bit format. The output filenames are given by the basename together with .3D.16 and .3D.param added on. The spectrum-type code should be one of COSY, NOESY, TOCSY, or OTHER (the initial letter is sufficient), indicating the kind of experiment from which the data are derived.

QC [row;i]

Perform quadrature correction by using the Gramm-Schmidt procedure to adjust the imaginary component to be orthogonal to the real component along the current dimension.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

QUADFIX [row;i] [AMX]

QUADFIX [row;i] sign1;l sign2;l [sign3;l sign4;l]

Apply a sign fixup for quadrature data. The first form of the command applies a default fixup: for States, States-TPPI, and normal TPPI data, no action is performed; for TPPI-Redfield data alternate pairs are negated (i.e., R R -R -R). The AMX keyword indicates that in addition, every even point is to be negated (so States data are treated using R -I, and TPPI-Redfield data are treated using R -R -R R). The second form of the command applies a user-specified sign fixup. There must be two or four sign specifiers. For real data, each specifier must be either R or -R; for complex data, the second (and fourth if present) must be either I or -I. Thus, for example, complex data can be conjugated using the command QUADFIX R -I.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

REALPART

Throw away the complex component of the data in the current dimension, leaving just the real component.

RESTORECOL

Synonym for RESTOREROW.

RESTOREROW

Restore the NMR parameters and data saved by a previous GETROW.

REVERSE [row;i]

Reverse the data along the current dimension about the zero frequency point.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

RFT [row;i] [NOFIX or scale;f]

Perform a forward real Fourier transform of TPPI time-domain data. The data must be stored in (X,Y,-X,-Y) format. The first point of each row is pre-multiplied by the value of the scale parameter (the default is 0.5) unless NOFIX is specified. For two-dimensional data, the row parameter indicates that only a single row should be processed.

ROTATE [row;i] number;i

Rotate along the current dimension by the specified number of points. A positive number means rotate right; a negative number means rotate left. For two-dimensional data, the row parameter indicates that only a single row should be processed.

SAMPFUNC schdfile;l [dom-1;l ... dom-n;l]

Generate a 1-, 2-, or 3-D sampling function. The resulting time domain data has the value cmplx(1.,1.) for samples contained in the designated sample schedule, and the value

zero for samples not contained in the sample schedule.

SAVE datafile;l [dom-1;l ... dom-n;l]

Write the contents of the workspace to the specified file. The file will contain just the NMR data values, in native IEEE floating point format. A corresponding parameter file (with a name formed by replacing the last four characters of the datafile name with ".par") is also written. It is a text file, which can be edited by hand, containing appropriate SETPAR commands to specify the values of the NMR parameters. There are two additional lines, specifying the format and layout of the data respectively, as used by the LOAD command. If the dimension domain names are given, they specify the order in which the dimensions will be stored in the file. Dom-1 will vary the slowest, dom-n the fastest. If dimension names are not specified, the order of storage is the same as in the workspace.

SAVEPAR paramfile;l

Write the current NMR parameters to a text file.

SEEDATA index-1;i ... index-n;i

Display the hypercomplex value of a single data point.

SEEPAR

Display the current NMR parameter settings.

SEFIX1 se-dim;l

SEFIX2 se-dim;l

Perform the first or second step of processing for sensitivity- enhanced data. The se-dim parameter indicates which dimension stores the two component data sets. SEFIX1 adds and subtracts the two values in the se-dimension; the sum is stored in the first position, and the difference is phased by 90 degrees in the current dimension and stored in the second position. SEFIX2 does the same thing, except that the data points in the second position along the se-dimension are phased before the addition and subtraction. If the se-dimension is complex, this action is performed for each real-imaginary pair in that dimension. Otherwise, the se-dimension must have length equal to 2.

SETDATA index-1;i ... index-n;i value-1;r [comp-1;l] ...

Set the hypercomplex value of a single data point. The component literals are of the form RRR, RIIR, IR, etc. and indicate which component should receive the specified value. If the component literals are not given, the values are assigned in the natural order (starting from RRRR).

SETPAR [setpar-command]

SETPAR filename;l

Set the value of an NMR parameter. If the setpar-command is given it is executed directly; if it is omitted the program prompts for repeated setpar-commands (and returns to normal mode when the command EXIT is given). If a filename is given, the program will read a series of setpar-commands from the specified file. The various setpar-commands are listed below. In these commands, the symbol "n" stands for a dimension number (1 through 4). For all of the commands except the first two (COMMENT and DOM) it is possible to apply the command to all dimensions at once, by leaving off the "n" in the command name and listing the parameter values for all the dimensions on the same command line.

COMMENT 'quote-delimited comment string'

Set the explanatory comment for the data set.

DOM dom-1;l ... dom-n;l

Set the number of dimensions and specify their physical layout in memory. This command is unique in that the order of the dimensions is not the logical order but rather the physical row-major ordering in memory. For example, if the current data set contained a 3D experiment that had been collected as a set of T1-T3 planes, the command to set the appropriate indexing would be DOM T2 T1 T3, indicating that the T2 dimension was the slowest, the T1 dimension intermediate, and the T3 dimension the fast one.

DOMn dom;l

Set the domain type for a dimension, e.g. to T or F.

Nn number;i [type;l]

Set the number of points in a dimension. If type is present it must be either R or C (for Real or Complex).

SWn width;f

Set the spectral width of a dimension, in Hz. This command automatically invokes the SCALEn command to set XFIRSTn and XSTEPn as well.

SCALEn

Set the XFIRSTn and XSTEPn parameters to the appropriate values for the time or frequency domain, according to DOMn and QUADn.

XFIRSTn value;f

Set the value for the first point in a dimension. In the time domain this value is in seconds (and is usually set to 0.); in the frequency domain the value is in Hz (and is usually set to -1/2 the spectral width).

XSTEPn value;f

Set the interval between points in a dimension. In the time domain this value is in seconds (and is usually set to the dwell time); in the frequency domain the value is in Hz (and is equal to the digital resolution). Note that for TPPI data sets in the time domain, the value of XSTEPn is actually 1/2 the inverse of the spectral width.

CPHASEn phase;{i or f}

Set the constant phase offset for a dimension. The phase angle is in degrees. Issuing this command does not affect the data; it just sets the parameter value.

LPHASEn phase;{i or f}

Set the linear phase offset for a dimension. The phase angle is in degrees over the entire spectrum, and the pivot is located at 0 Hz. Issuing this command does not affect the data; it just sets the parameter value.

PHASEn {cphase;i lphase;i or cphase;f lphase;f}

Set both the constant and linear phase offsets for a dimension.

SFn freq;f

Set the spectrometer carrier frequency for a dimension. The frequency value is in MHz.

PPMn {ppm;f or freq;f ppm;f}

Set the ppm reference for a dimension. The ppm scale is referenced so that the given frequency has the given ppm value. If the frequency is omitted, it is taken to be 0 Hz (i.e., the carrier frequency).

NACQn number;i

Set the number of points acquired in a dimension. This value is only for purposes of annotation; the Toolkit does not use it.

QUADn quad-type;l

Set the type of quadrature detection used in a dimension. The possible values for quad-type are:

STATES (x,y) pairs collected

STATES-TPPI (x,y) and (-x,-y) pairs alternately

TPPI x, y, -x, -y phase cycling

TPPI-REDFIELD x, y, x, y phase cycling

SHELL 'Shell-command'

Spawns a sub-shell to execute the specified command (which must be surrounded by quotation marks).

SHRINK number;i [first;i]

Shrink the data set along the current dimension. Only the specified number of points are kept, starting at the index given by the optional second parameter (the default starting position is 1).

SINEBELL [row;i] [SQUARE] [SHIFT phase;{i or f}] [USE npoints;i]

Apply a sinebell (or squared sinebell if the SQUARE keyword is given) window function. The optional phase shift is taken to be PI/phase radians if specified as an integer, or degrees if specified as a floating point number. The optional npoints argument indicates at which point the window function becomes zero; subsequent data points are all set to zero.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

SSTDC [row;i] [width;i endpoints;i] [frequency;f] [COS]

SSTDC DIAG [width;i endpoints;i] [COS]

Perform solvent suppression on an FID by time domain deconvolution. The width parameter is inversely proportional to the size of the window to be suppressed. The endpoints parameter specifies the number of points at the beginning and end of the FID to treat using extrapolation rather than convolution. The defaults are 16 and 20, respectively. For complex data, the central frequency for the filter band can also be specified; the default is 0 Hz. The default filter function shape is Gaussian, but an optional cosine-shaped filter can be specified.

For two-dimensional data, the row parameter indicates that only a single row should be processed. Also, for two- dimensional data, the keyword DIAG indicates that the filter frequency for each row should be the frequency corresponding to the row (i.e., the diagonal of the spectrum).

STREAM filename;l

Read input from a disk file. Stream files may be nested 3 deep.

THRESH {cutoff;f or percentile;f PERCENT} [SOFT] [nskip;i]

Apply a threshholding operation. The cutoff value can be given directly or as a percentile of all the data values. Data points below the cutoff in absolute value are set to 0. For SOFT thresholding, data points above the cutoff are reduced in absolute value by the cutoff amount (so the operation is continuous). The absolute value is computed separately on the real and imaginary components; i.e., the data is treated as though it is all real rather than complex. Optionally, a number of initial points to skip may be specified; these data points will remain unchanged.

TRAP [row;i] {t1;f t2;f t3;f t4;f or t1;i t2;i t3;i t4;i}

Apply a trapezoidal window function. The arguments t1 - t4 specify the start and end of the up-ramp and the start and end of the down-ramp. If given as floating point numbers, they refer to percentages of the length of the current dimension. If given as integers, they refer to the actual point indices. For two-dimensional data, the row parameter indicates that only a single row should be processed.

TRUNCATE [row;i] npoints;i

Truncate the data by setting all values after the specified number of points to zero.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

XSECT index;i

Take a cross section of the data set perpendicular to the current dimension. Only the specified index point is kept, and the current dimension is deleted. If SUM is specified instead, the data set is projected by summing along the current dimension. If MAX is specified, the data set is projected by taking the maximum absolute value along the current dimension (skyline projection).

ZEROFILL [npoints;i]

Extend the data along the current dimension by adding zeros. If npoints is not specified, it is taken to be the next power of two larger than the current number of points.

ZIMAG [row;i]

Set the imaginary component along the current dimension to zero.

For two-dimensional data, the row parameter indicates that only a single row should be processed.

EXIT

EXTRACT

FFT

FIDPBC

FWT

GAUSS

GETCOL

GETROW

GM

IFFT

IFWT

LBC

LOAD

LOADGX

LOADMAT

LOADSEC

LOADVNMR

LOG

LORENTZ

MOVE

NOISE

NORMALIZE

ONES

PCOSY

PHASE

POWER

PROJECT

PUTEASY

PUTMAT

PUTXEASY

QC

QUADFIX

REALPART

RESTORECOL

RESTOREROW

RFT

ROTATE

SAVE

SAVEPAR

SEEDATA

SEEPAR

SHELL

SHRINK

SINEBELL

SSTDC

STREAM

THRESH

TRAP

TRUNCATE

XSECT

ZERFILL

ZIMAG