diff --git a/matlab/PosteriorIRF.m b/matlab/PosteriorIRF.m
index c70b05f82a23a302727f89da9534186eebd5c34f..ec7cdf17372efcbe6f1a4a36065114f3d4d4fe0e 100644
--- a/matlab/PosteriorIRF.m
+++ b/matlab/PosteriorIRF.m
@@ -172,6 +172,7 @@ localVars.IRUN = IRUN;
 localVars.irun = irun;
 localVars.irun2=irun2;
 localVars.nosaddle=nosaddle;
+localVars.npar = npar;
 
 localVars.type=type;
 if strcmpi(type,'posterior')
diff --git a/matlab/PosteriorIRF_core1.m b/matlab/PosteriorIRF_core1.m
index 55beeafcd7fe6662446c8506b56bfb7a0442e1f9..d89308db9b46ec20d0308ae8df70fd72584d5d72 100644
--- a/matlab/PosteriorIRF_core1.m
+++ b/matlab/PosteriorIRF_core1.m
@@ -53,20 +53,12 @@ IRUN = myinputs.IRUN;
 irun =myinputs.irun;
 irun2=myinputs.irun2;
 nosaddle=myinputs.nosaddle;
+npar=myinputs.npar;
 type=myinputs.type;
 if ~strcmpi(type,'prior'),
     x=myinputs.x;
 end
 
-if options_.dsge_var
-    gend=myinputs.gend;
-    nvobs=myinputs.nvobs;
-    NumberOfParametersPerEquation = myinputs.NumberOfParametersPerEquation;
-    NumberOfLags = myinputs.NumberOfLags;
-    NumberOfLagsTimesNvobs = myinputs.NumberOfLagsTimesNvobs;
-    Companion_matrix = myinputs.Companion_matrix;
-end
-
 nvar=myinputs.nvar;
 IndxVariables=myinputs.IndxVariables;
 MAX_nirfs_dsgevar=myinputs.MAX_nirfs_dsgevar;
@@ -77,6 +69,17 @@ NumberOfIRFfiles_dsge=myinputs.NumberOfIRFfiles_dsge;
 NumberOfIRFfiles_dsgevar=myinputs.NumberOfIRFfiles_dsgevar;
 ifil2=myinputs.ifil2;
 
+if options_.dsge_var
+    gend=myinputs.gend;
+    nvobs=myinputs.nvobs;
+    NumberOfParametersPerEquation = myinputs.NumberOfParametersPerEquation;
+    NumberOfLags = myinputs.NumberOfLags;
+    NumberOfLagsTimesNvobs = myinputs.NumberOfLagsTimesNvobs;
+    Companion_matrix = myinputs.Companion_matrix;
+    stock_irf_bvardsge = zeros(options_.irf,nvobs,M_.exo_nbr,MAX_nirfs_dsgevar);
+end
+
+
 if whoiam
     Parallel=myinputs.Parallel;
 end
@@ -129,7 +132,8 @@ if whoiam
 end
 
 % Parallel 'while' very good!!!
-
+stock_param=zeros(MAX_nruns,npar);
+stock_irf_dsge=zeros(options_.irf,nvar,M_.exo_nbr,MAX_nirfs_dsge);
 while fpar<npar
     fpar = fpar + 1;
     irun = irun+1;