Code covered by the BSD License  

Highlights from
UD Factorization & Kalman Filtering

UD Factorization & Kalman Filtering

by

 

15 Aug 2011 (Updated )

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

[p]=udt2sym(ud)
% UDT2SYM: Recover P=U'DU, UD an UDU factorization of P
%          U upper triangular, D diagonal, P nonnegative symmetric
%
%          [p]=udt2sym(ud)
%
%          p=u'*d*u
%
%          Used to compute : inv(p)=inv(u)'*inv(d)*inv(u)
%          [udi]=udinv(ud) computes inv(u),inv(d)
%          Then: inv(p)=udt2sym(udinv(sym2ud(p)))
%
%          See also udinv, ud2sym, sym2ud
%
%          References: Factorization methods for discrete sequential estimation
%                      1977, Gerald J. Bierman
%
% L.G. van Willigenburg, W.L. de Koning, Update August 2011

  function [p]=udt2sym(ud)
  
  [n,m]=size(ud);
  if n~=m; error('ud must be square'); end;
  if n==0; error('  Compatible but empty inputs'); end;

  d=diag(diag(ud));
  u=ud-d+diag(ones(1,n));
  p=u'*d*u;

Contact us