diff --git a/matlab/perfect-foresight-models/make_ex_.m b/matlab/perfect-foresight-models/make_ex_.m index 3234afbeca94783354aa58564584a122e634826e..f3a9f483fb3c0a5b6ff8a182b8112c07bc1bd38d 100644 --- a/matlab/perfect-foresight-models/make_ex_.m +++ b/matlab/perfect-foresight-models/make_ex_.m @@ -49,22 +49,26 @@ if isempty(oo_.initval_series) error('histval and endval cannot be used simultaneously') end end -elseif M_.exo_nbr > 0 - x = oo_.initval_series{M_.exo_names{:}}.data; - oo_.exo_simul = x(M_.orig_maximum_lag-M_.maximum_lag+1:M_.orig_maximum_lag + options_.periods + M_.maximum_lead,:); - if ~isempty(M_.exo_histval) - oo_.exo_simul(1:M_.maximum_lag, :) ... - = M_.exo_histval(:, 1:M_.maximum_lag)'; +else + if M_.exo_nbr > 0 + x = oo_.initval_series{M_.exo_names{:}}.data; + oo_.exo_simul = x(M_.orig_maximum_lag-M_.maximum_lag+1:M_.orig_maximum_lag + options_.periods + M_.maximum_lead,:); + if ~isempty(M_.exo_histval) + oo_.exo_simul(1:M_.maximum_lag, :) ... + = M_.exo_histval(:, 1:M_.maximum_lag)'; + end + else + oo_.exo_simul=zeros(M_.maximum_lag + options_.periods + M_.maximum_lead,M_.exo_nbr); end -elseif M_.exo_det_nbr > 0 - x_det = oo_.initval_series{M_.exo_det_names{:}}.data; - oo_.exo_det_simul = x_det(M_.orig_maximum_lag-M_.maximum_lag+1:M_.orig_maximum_lag + options_.periods + M_.maximum_lead,:); - if ~isempty(M_.exo_det_histval) - oo_.exo_det_simul(1:M_.maximum_lag, :) ... - = M_.exo_det_histval(:, 1:M_.maximum_lag)'; + if M_.exo_det_nbr > 0 + x_det = oo_.initval_series{M_.exo_det_names{:}}.data; + oo_.exo_det_simul = x_det(M_.orig_maximum_lag-M_.maximum_lag+1:M_.orig_maximum_lag + options_.periods + M_.maximum_lead,:); + if ~isempty(M_.exo_det_histval) + oo_.exo_det_simul(1:M_.maximum_lag, :) ... + = M_.exo_det_histval(:, 1:M_.maximum_lag)'; + end end end - % Initialize oo_.exo_det_simul if M_.exo_det_nbr > 0 if isempty(M_.exo_det_histval)