diff --git a/matlab/dynare_estimation_init.m b/matlab/dynare_estimation_init.m
index 8cab9c4725745e382eb702bebf1fd75176d6dd46..ca98d735feda8b5509d592d08885250597e6583a 100644
--- a/matlab/dynare_estimation_init.m
+++ b/matlab/dynare_estimation_init.m
@@ -69,7 +69,12 @@ end
 % Set options_.lik_init equal to 3 if diffuse filter is used or
 % kalman_algo refers to a diffuse filter algorithm.
 if (options_.diffuse_filter==1) || (options_.kalman_algo > 2)
-    options_.lik_init = 3;
+    if options_.lik_init == 2
+        error(['options diffuse_filter, lik_init and/or kalman_algo have ' ...
+               'contradictory settings'])
+    else
+        options_.lik_init = 3;
+    end
 end
 
 % If options_.lik_init == 1
diff --git a/matlab/kalman/likelihood/kalman_filter_d.m b/matlab/kalman/likelihood/kalman_filter_d.m
index 1bb56e635238d9b285faae8d97842f63097ea075..a39856c1a99ef5ba30e5ab4129bbcc206c6092fc 100644
--- a/matlab/kalman/likelihood/kalman_filter_d.m
+++ b/matlab/kalman/likelihood/kalman_filter_d.m
@@ -58,6 +58,7 @@ t    = start;              % Initialization of the time index.
 dlik = zeros(smpl,1);      % Initialization of the vector gathering the densities.
 dLIK = Inf;                % Default value of the log likelihood.
 oldK = Inf;
+s    = 0;
 
 while rank(Pinf,kalman_tol) && (t<=last)
     s = t-start+1;
diff --git a/tests/arima/mod1c.mod b/tests/arima/mod1c.mod
index a670c676661cbd250a7d540de33b486c0d5ec57e..3b7e21fde4fc9e98dbf7cd61a3a65c36300b9b78 100644
--- a/tests/arima/mod1c.mod
+++ b/tests/arima/mod1c.mod
@@ -23,5 +23,4 @@ stderr y,INV_GAMMA_PDF,0.01,inf;
 end;
 
 varobs x y;
-unit_root_vars x y;
 estimation(datafile=data1,nobs=1000,mh_replic=2000,lik_init=2,mh_jscale=1.2);
\ No newline at end of file
diff --git a/tests/arima/mod2a.mod b/tests/arima/mod2a.mod
index a0ceed6588637d13d9e14186bde1996c89d9e335..305f4f2bd352772dd919f107d067d282c89666d2 100644
--- a/tests/arima/mod2a.mod
+++ b/tests/arima/mod2a.mod
@@ -29,5 +29,4 @@ end;
 
 varobs dx dy;
 
-unit_root_vars x y;
-estimation(datafile=data2,nobs=100,mh_replic=0,lik_init=2);
+estimation(datafile=data2,nobs=100,mh_replic=0,diffuse_filter);
diff --git a/tests/arima/mod2b.mod b/tests/arima/mod2b.mod
index 1fd7a0ba2c896d3dd018bdb26ecf93b49f711bd2..ffe3e5362b0473242aecdb1e5b7b2f13e1935596 100644
--- a/tests/arima/mod2b.mod
+++ b/tests/arima/mod2b.mod
@@ -29,5 +29,4 @@ end;
 
 varobs x y;
 
-unit_root_vars x y;
-estimation(datafile=data2,nobs=100,mh_replic=0,lik_init=2);
+estimation(datafile=data2,nobs=100,mh_replic=0,diffuse_filter);
diff --git a/tests/arima/mod3a.mod b/tests/arima/mod3a.mod
deleted file mode 100644
index cfa20775ded8bb2c71df25ce1158f39f6cca78fe..0000000000000000000000000000000000000000
--- a/tests/arima/mod3a.mod
+++ /dev/null
@@ -1,24 +0,0 @@
-var dx dy;
-varexo e_x e_y;
-
-parameters rho_x rho_y;
-
-rho_x = 0.5;
-rho_y = -0.3;
-
-model;
-dx = rho_x*dx(-1)+e_x;
-dy = rho_y*dy(-1)+e_y;
-end;
-
-estimated_params;
-rho_x,NORMAL_PDF,0.5,0.1;
-rho_y,NORMAL_PDF,-0.3,0.1;
-stderr e_x,INV_GAMMA_PDF,0.01,inf;
-stderr e_y,INV_GAMMA_PDF,0.01,inf;
-end;
-
-varobs dx dy;
-check;
-estimation(datafile=data1,nobs=1000,mh_replic=0,load_mh_file);
-stab_map_;
\ No newline at end of file