diff --git a/matlab/DiffuseKalmanSmoother1.m b/matlab/DiffuseKalmanSmoother1.m
index ef64185df068275e44ca7617604d3404c61145ac..def1b080cf719f0af6de47f83e34730c47f27800 100644
--- a/matlab/DiffuseKalmanSmoother1.m
+++ b/matlab/DiffuseKalmanSmoother1.m
@@ -131,7 +131,7 @@ while notsteady & t<smpl
     a(:,t+1)    = T*atilde(:,t);
     aK(1,:,t+1) = a(:,t+1);
     for jnk=2:nk,
-        aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1));
+        aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1))';
     end
     P(:,:,t+1)  = T*P(:,:,t)*transpose(T)-T*P(:,mf,t)*transpose(K(:,:,t)) + QQ;
     notsteady   = ~(max(max(abs(P(:,:,t+1)-P(:,:,t))))<crit);
@@ -154,7 +154,7 @@ while t<smpl
     a(:,t+1) = T*a(:,t) + K_s*v(:,t);
     aK(1,:,t+1) = a(:,t+1);
     for jnk=2:nk,
-        aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1));
+        aK(jnk,:,t+jnk) = T*squeeze(aK(jnk-1,:,t+jnk-1))';
     end
 end
 t = smpl+1;