This diskette contains demonstration programs and source codes in MATLAB for algorithms listed in the textbook "Kalman Filtering: Theory and Practice, Using MATLAB" by M. S. Grewal and A. P. Andrews, published by John Wiley and Sons, 2000. LIMITS OF LIABILITY AND DISCLAIMER OF WARRANTY: These programs are intended for demonstration and instructional purposes only. The authors and publishers make no warrrenty of any kind, expressed or implied, that these programs meet any standards of mercantibility for commercial purposes. These programs should not be used as-is for any purpose or application that may result in loss or injury, and the publishers and authors shall not be liable in any event for incidental or consequential damages in connection with, or arising out of, the furnishing, performance, or use of these programs. CONTENTS OF THE DISKETTE The root directory of the diskette contains this file and the file WHATSUP.DOC, which contains descriptions of any changes to the software since publication. The other contents are divided among the directories according to the relative chapters of the book. (subdirectories) MATLAB (Matlab script files) CHAPTER2 - This MATLAB program explains how to find the exponential function of a matrix. CHAPTER4 demo1.m demonstrates the probability conditioning on measurements. demo2.m demonstrates the effects of approximations commonly used in converting continuous time models to discrete time models, using Example 4.3. exam43.m demonstrates the Kalman filter in the estimation of position and velocity of a damped harmonic oscillator with constant forcing function, using Example 4.3. exam44.m demonstrates the covariance analysis of radar tracking, using Example 4.4. RTSvsKF.m demonstrates relative performance of the Kalman filter and Rauch-Tung-Striebel smoother on random walk estimation. CHAPTER5 exam53.m demonstrates the extended Kalman filter in the estimation of position, velocity, and damping factor of a damped harmonic oscillator with constant forcing function using Example 5.3. exam53x.m and Exam53y.m descriptions are given in whatsup.doc. CHAPTER6 Shootout.m is a demonstration of the efficiency of nine alternative observational updates, using the ill-conditioned problem in Example 6.2.) Carlson.m - N. A. Carlson's observational update method. Utchol.m - upper triangular cholesky decomposition (Matlab's does lower triangular) Potter.m - J. E. Potter's observational update method. Joseph.m - P. D. Joseph's observational update method. Josephb.m - P. D. Joseph's observational update method, modified by Bierman. Josephdv.m - P. D. Joseph's observational update method, modified by De Vries. Bierman.m - G. J. Bierman's observational update method. Thornton.m - C. L. Thornton's temporal update method. CHAPTER7 kfvsskf.m demonstrates Schmidt-Kalman filter for random walk process with correlated sensor noise. DEMOS demo2_01.m demonstrates performance of a fixed gain estimator. demo2_02.m demonstrates the relative performance of Weiner filter (fixed gain) and Kalman filter (time-varying gain) on random walk estimation. demo2_03.m demonstrates "Type 2 tracker" for random walk process with mean velocity. demo2_04.m demonstrates tracking of a harmonic oscillator with drifting characteristics. demo2_05.m demonstrates autocorrelations and power spectral densities of different noise types. READ.ME A text file explaining the demos. GENERAL COMMENTS The executable programs demonstrate Kalman filter implementations on a problem used throughout the book: estimating the state of the stochastic system model for damped harmonic resonators and shaping filters. The source codes are included for the purpose of saving the reader the effort of transcribing and debugging the listings in the text for demonstrating how the various implementation methods for the Kalman filter perform on sample problems. Derivations of most of these algorithms are contained in the book. Any corrections or changes since printing are explained in the file named WHATSUP.DOC. The authors would appreciate any corrections or suggestions for changes to the programs that you may discover in your use of them. Please send any correspondence to: Angus Andrews 2037 Rosebay Street Westlake Village, California 91361-1822, USA