*---- Title

Chapter 9. Smoothing Filters

*---- MATLAB (functions)

SavGol.m
	Savitzky-Golay smoothing filter from Algorithm 9.2

lsq.m
	Least Squares smoothing filter from Algorithm 9.9

*---- MATLAB (scripts)

demo.m
	This demo program uses Algorithm 9.1 to generate the 
	smooth function of Figure 9.1 and the noisy data of 
	Figure 9.2. Then it uses the Savitzky-Golay filter 
	to generate Figure 9.4. Finally, the plot from 
	Figure 9.7 is obtained by appliying the least squares 
	filter to the noisy data.  By changing the size n
	of the data the reader should be able to reproduce 
	Table 9.1.
	In order to execute demo.m you will need to compile the
	files Qx.c, QTx.c, and spqr.c to MEX files.

noisy.m
	generation of noisy data

*---- C files (to compile MEX files)
	See your local MATLAB installation guide on how to 
	compile MEX files. On Unixes the following commands 
	(in MATLAB) should work:
		mex Qx.c
		mex QTx.c
		mex spqr.c

QTx.c
	calculation of the product y := Q'x corresponding 
	to Algorithm 9.6, called by lsq.m.

Qx.c
	calculation of the product y := Qx corresponding 
	to Algorithm 9.5; although this procedure is not called 
	by lsq.m we supply it for the sake of completeness.

spqr.c
	calculation of the sparse QR-decomposition (9.48). Note 
	that sigma is an abbreviation for sqrt(lambda). For a 
	description of the code the reader is referred to 
	Figure 9.6 as well as to Algorithms 9.4, 9.7, and 9.8.
	spqr is called by lsq.m

blas.c
	This file contains two procedures for the calculation
	and application of Givens rotations.  They are used in 
	spqr.c, Qx.c, and QTx.c.  A more detailed description 
	of these operations may be found in the following two 
	references:

	C. L. Lawson, R. J. Hanson, D. R. Kincaid and F. T. Krogh,
	Basic Linear Algebra Subprograms for Fortran Usage,
	ACM Trans. Math. Softw., 5 (1979), pp. 308--325.

	J. J. Dongarra, C. B. Moler, J. R. Bunch and G. W. Stewart,
	LINPACK Users' Guide,
	SIAM Publications, Philadelphia, 1979.

	The two warnings (lines 23 and 25) during MEX compilation
	are bogus.
