From 44623a1d3f113c1d778c51e521975feb8885e461 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Karaba=29?= Date: Sat, 13 Feb 2010 19:19:57 +0100 Subject: [PATCH] Fixed bug related to squeeze. Replaced matlab's squeeze function by dynare_squeeze. --- matlab/DiffuseKalmanSmoother1.m | 6 +++--- matlab/DiffuseKalmanSmoother1_Z.m | 6 +++--- matlab/DiffuseKalmanSmoother3.m | 6 +++--- matlab/DiffuseKalmanSmoother3_Z.m | 2 +- matlab/DiffuseKalmanSmootherH1.m | 6 +++--- matlab/DiffuseKalmanSmootherH1_Z.m | 6 +++--- matlab/DiffuseKalmanSmootherH3.m | 6 +++--- matlab/DiffuseKalmanSmootherH3corr.m | 6 +++--- matlab/missing_DiffuseKalmanSmoother1.m | 4 ++-- matlab/missing_DiffuseKalmanSmoother1_Z.m | 4 ++-- matlab/missing_DiffuseKalmanSmoother3.m | 4 ++-- matlab/missing_DiffuseKalmanSmoother3_Z.m | 4 ++-- 12 files changed, 30 insertions(+), 30 deletions(-) diff --git a/matlab/DiffuseKalmanSmoother1.m b/matlab/DiffuseKalmanSmoother1.m index def1b080c..f23f9de7a 100644 --- a/matlab/DiffuseKalmanSmoother1.m +++ b/matlab/DiffuseKalmanSmoother1.m @@ -99,7 +99,7 @@ while rank(Pinf(:,:,t+1),crit1) & t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end P(:,:,t+1) = T*P(:,:,t)*T'-T*P(:,:,t)*Z'*K(:,:,t)' + QQ; @@ -170,7 +170,7 @@ while t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end end diff --git a/matlab/DiffuseKalmanSmoother3.m b/matlab/DiffuseKalmanSmoother3.m index 514890cf7..8675118c2 100644 --- a/matlab/DiffuseKalmanSmoother3.m +++ b/matlab/DiffuseKalmanSmoother3.m @@ -168,7 +168,7 @@ while newRank & t < smpl a1(:,t+1) = T*a(:,t); aK(1,:,t+1) = a1(:,t+1); for jnk=2:nk - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end Pstar(:,:,t+1) = T*Pstar(:,:,t)*transpose(T)+ QQ; Pinf(:,:,t+1) = T*Pinf(:,:,t)*transpose(T); @@ -215,7 +215,7 @@ while notsteady & t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end P(:,:,t+1) = T*P(:,:,t)*transpose(T) + QQ; @@ -248,7 +248,7 @@ while t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end end diff --git a/matlab/DiffuseKalmanSmoother3_Z.m b/matlab/DiffuseKalmanSmoother3_Z.m index c6fa2a285..6402e6fbb 100644 --- a/matlab/DiffuseKalmanSmoother3_Z.m +++ b/matlab/DiffuseKalmanSmoother3_Z.m @@ -211,7 +211,7 @@ while notsteady & t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end P(:,:,t+1) = T*P(:,:,t)*T' + QQ; diff --git a/matlab/DiffuseKalmanSmootherH1.m b/matlab/DiffuseKalmanSmootherH1.m index 8e1602308..12b320dcf 100644 --- a/matlab/DiffuseKalmanSmootherH1.m +++ b/matlab/DiffuseKalmanSmootherH1.m @@ -100,7 +100,7 @@ while rank(Pinf(:,:,t+1),crit1) & t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end P(:,:,t+1) = T*P(:,:,t)*T'-T*P(:,:,t)*Z'*K(:,:,t)' + QQ; @@ -173,7 +173,7 @@ while t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end end diff --git a/matlab/DiffuseKalmanSmootherH3.m b/matlab/DiffuseKalmanSmootherH3.m index afa98b534..c6becb69a 100644 --- a/matlab/DiffuseKalmanSmootherH3.m +++ b/matlab/DiffuseKalmanSmootherH3.m @@ -166,7 +166,7 @@ while newRank & t < smpl a1(:,t+1) = T*a(:,t); aK(1,:,t+1) = a1(:,t+1) for jnk=2:nk - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end Pstar(:,:,t+1) = T*Pstar(:,:,t)*transpose(T)+ QQ; Pinf(:,:,t+1) = T*Pinf(:,:,t)*transpose(T); @@ -209,7 +209,7 @@ while notsteady & t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end % notsteady = ~(max(max(abs(P(:,:,t+1)-P(:,:,t))))1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end P(:,:,t+1) = T*P(:,:,t)*transpose(T) + QQ; diff --git a/matlab/missing_DiffuseKalmanSmoother3_Z.m b/matlab/missing_DiffuseKalmanSmoother3_Z.m index 8a7313f2c..a5615c63f 100644 --- a/matlab/missing_DiffuseKalmanSmoother3_Z.m +++ b/matlab/missing_DiffuseKalmanSmoother3_Z.m @@ -166,7 +166,7 @@ while newRank & t < smpl a1(:,t+1) = T*a(:,t); aK(1,:,t+1) = a1(:,t+1); for jnk=2:nk - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end Pstar(:,:,t+1) = T*Pstar(:,:,t)*T'+ QQ; Pinf(:,:,t+1) = T*Pinf(:,:,t)*T'; @@ -214,7 +214,7 @@ while notsteady & t1 - aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1)); + aK(jnk,:,t+jnk) = T*dynare_squeeze(aK(jnk-1,:,t+jnk-1)); end end P(:,:,t+1) = T*P(:,:,t)*T' + QQ;