View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
UD Factorization & Kalman Filtering

5.0 | 4 ratings Rate this file 14 Downloads (last 30 days) File Size: 73 KB File ID: #32537 Version: 1.7

UD Factorization & Kalman Filtering



15 Aug 2011 (Updated )

UD and LD factorization of nonnegative matrices and associated Kalman filter implementations.

| Watch this File

File Information

To enhance the efficiency and accuracy of Kalman filter computations, in particular the time and measurement updates, UD factorization is employed.
An interesting feature of the current implementation is the extension to semi-positive (nonnegative) matrices and systems with a time-varying state dimension. The matlab implementation is through both m files and mex files written in c. The mex files speed up the computations which contain several for loops. Use the function mexudu to compile all .c mex files in the current folder

As a complete mirror image of UD factorization, LD factorization may be employed. Depending on the application, one may have an advantage over the other.
Or, to obtain computational symmetry, both may be required. Therefore dual to each UD function a dual LD version is provided.

Factorization methods for discrete sequential estimation, 1977, Gerald J. Bierman

L.G. van Willigenburg, W.L. De Koning, 2004, "UDU factored discrete-time Lyapunov recursions solve optimal reduced-order LQG problems", European Journal of Control, 10, pp. 588-601

MATLAB release MATLAB 7.5 (R2007b)
MATLAB Search Path
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (4)
08 Dec 2016 Matthew

Great toolbox. Documentation, references, "unit tests" which all appear to work, MEX implementations. Author continues to keep the Toolbox up to date. Very professional, thanks :-)

07 Dec 2016 Myungsik Kim

23 Aug 2012 BILL XUE

06 Jan 2012 afu2007 ??

sounds very good, let me check carefully

16 Aug 2011 1.1

In sym2ut.m the 3rd output argument inz has been added. In the readme.m file utinv is now correctly mentioned to compute the inverse of u.

31 Aug 2011 1.3

The application to systems with time-varying state-dimension has been implemented.
The efficiency of sym2ud, sym2ut and psdr has been improved.
In uduex associated additional examples have been added.

23 Sep 2011 1.4

LDL mirror images of each function are added.
The comments of several functions are corrected or improved.

17 Jan 2012 1.5

kmudu and kmldl are updated to also produce a Kalman gain for vector updates.
Functions ud2ut, ld2lt, ut2ud, lt2ld are added. uduex and ldlex are updated. Code and comments of several functions are corrected or improved.

03 Mar 2012 1.6

UDU is replaced with UD in the title and some desciptions, notably in the readme.m and modifications.txt file. The internet link to one reference is updated.

14 Apr 2013 1.7

The internet link in the description has been updated. No changes to the files.

08 Dec 2016 1.7

The internet link to the reference has been corrected

Contact us