From 61e78763da81f9b964a68d0b004f0d05fcca074a Mon Sep 17 00:00:00 2001 From: Michel Juillard <michel.juillard@ens.fr> Date: Wed, 9 Jun 2010 17:57:40 +0200 Subject: [PATCH] correcting bug in kalman filter when it reaches the steady state (multivariate diffuse Kalman filter, both versions, regular Kalman filter with missing observations) --- matlab/kalman/likelihood/diffuse_kalman_filter.m | 2 +- .../likelihood/missing_observations_diffuse_kalman_filter.m | 2 +- matlab/kalman/likelihood/missing_observations_kalman_filter.m | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/matlab/kalman/likelihood/diffuse_kalman_filter.m b/matlab/kalman/likelihood/diffuse_kalman_filter.m index b7f22346c7..4e0347b585 100644 --- a/matlab/kalman/likelihood/diffuse_kalman_filter.m +++ b/matlab/kalman/likelihood/diffuse_kalman_filter.m @@ -133,7 +133,7 @@ if F_singular == 1 end if t < smpl - t0 = t; + t0 = t+1; while t<smpl t = t+1; v = Y(:,t)-Z*a; diff --git a/matlab/kalman/likelihood/missing_observations_diffuse_kalman_filter.m b/matlab/kalman/likelihood/missing_observations_diffuse_kalman_filter.m index c8756bfdd1..b22689ec60 100644 --- a/matlab/kalman/likelihood/missing_observations_diffuse_kalman_filter.m +++ b/matlab/kalman/likelihood/missing_observations_diffuse_kalman_filter.m @@ -163,7 +163,7 @@ if F_singular == 1 end if t < smpl - t0 = t; + t0 = t+1; while t<smpl t = t+1; v = Y(:,t)-Z*a; diff --git a/matlab/kalman/likelihood/missing_observations_kalman_filter.m b/matlab/kalman/likelihood/missing_observations_kalman_filter.m index bdf4e91d53..4789517ba0 100644 --- a/matlab/kalman/likelihood/missing_observations_kalman_filter.m +++ b/matlab/kalman/likelihood/missing_observations_kalman_filter.m @@ -103,7 +103,7 @@ if F_singular end if t < smpl - t0 = t; + t0 = t+1; while t < smpl t = t+1; v = Y(:,t)-a(mf); -- GitLab