Home > src > tf_smooth.m

tf_smooth

PURPOSE ^

TF_SMOOTH Two filter based Smoother

SYNOPSIS ^

function [M,P] = tf_smooth(M,P,Y,A,Q,H,R,use_inf)

DESCRIPTION ^

TF_SMOOTH  Two filter based Smoother

 Syntax:
   [M,P] = TF_SMOOTH(M,P,Y,A,Q,H,R,[use_inf])

 In:
   M - NxK matrix of K mean estimates from Kalman filter
   P - NxNxK matrix of K state covariances from Kalman Filter
   Y - Sequence of K measurement as DxK matrix
   A - NxN state transition matrix.
   Q - NxN process noise covariance matrix.
   H - DxN Measurement matrix.
   R - DxD Measurement noise covariance.
   use_inf - If information filter should be used (default 1)

 Out:
   M - Smoothed state mean sequence
   P - Smoothed state covariance sequence
   
 Description:
   Two filter linear smoother algorithm. Calculate "smoothed"
   sequence from given Kalman filter output sequence
   by conditioning all steps to all measurements.

 Example:
   m = m0;
   P = P0;
   MM = zeros(size(m,1),size(Y,2));
   PP = zeros(size(m,1),size(m,1),size(Y,2));
   for k=1:size(Y,2)
     [m,P] = kf_predict(m,P,A,Q);
     [m,P] = kf_update(m,P,Y(:,k),H,R);
     MM(:,k) = m;
     PP(:,:,k) = P;
   end
   [SM,SP] = tf_smooth(MM,PP,A,Q,H,R,Y);

 See also:
   KF_PREDICT, KF_UPDATE

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:
Generated on Fri 12-Aug-2011 15:08:47 by m2html © 2005