From Eigenvector Research Documentation Wiki
Jump to navigation Jump to search


Piecewise and direct standardization transform generator.


[stdmat,stdvect] = stdgen(spec1,spec2,win,options)


STDGEN can be used to generate direct or piecewise direct standardization matrix with or without additive background correction. It can also be used to generate the transform using the "double window" method. The transform is based on spectra from two instruments, or original calibration spectra and drifted spectra from a single instrument.


  • spec1 = M by N1 spectra from the standard instrument, and
  • spec2 = M by N2 spectra from the instrument to be standarized.

Optional Inputs

  • win = [], empty or a 1 or 2 element vector.
If win is a scalar then STDGEN uses a single window algorithm,
If win is a 2 element vector it uses a double window algorithm.
win(1) = (odd) is the number of channels to be used for each transform, and
win(2) = (odd) is the number of channels to base the transform on.
If win is not input, it is set to zero and direct standardization is used.

options = a structure array discussed below.


  • stdmat = the transform matrix, and
  • stdvect = the additive background correction.

Note: if only one output argument is given, no background correction is used.


options = a structure array with the following fields:

  • tol: [ {0.01} ], tolerance used in forming local models (it equals the minimum relative size of singular values to include in each model), and
  • maxpc: [ ], specifies the maximum number of PCs to be retained for each local model {default: []}. maxpc must be ? the number of transfer samples. If maxpc is not empty it supersedes tol.
  • waitbar: ['off' | {'on'}], governs display of waitbar.

See Also

alignpeaks, alignspectra, baseline, caltransfer, deresolv, distslct, mscorr, reducennsamples, registerspec, stdfir, stdize, stdsslct, nlstd