Skip to content
Snippets Groups Projects
Commit ac5fcbe2 authored by Stéphane Adjemian's avatar Stéphane Adjemian
Browse files

Use new approach for setting aux variables in model inversion routine.

(cherry picked from commit f1ed81aa)
parent 14fbfa02
Branches
Tags
No related merge requests found
...@@ -69,29 +69,7 @@ if exogenousvariables.vobs>constraints.vobs ...@@ -69,29 +69,7 @@ if exogenousvariables.vobs>constraints.vobs
end end
% Add auxiliary variables in initialconditions object. % Add auxiliary variables in initialconditions object.
for i=1:length(DynareModel.aux_vars) [initialconditions, info] = checkdatabase(initialconditions, DynareModel, true, false);
if ~ismember(DynareModel.endo_names{DynareModel.aux_vars(i).endo_index}, initialconditions.name)
switch DynareModel.aux_vars(i).type
case 1 % lag on endogenous variable.
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).endo_index}} = ...
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).orig_index}}.lag(abs(DynareModel.aux_vars(i).orig_lead_lag));
case 8 % diff on endogenous variable.
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).endo_index}} = ...
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).orig_index}}.diff.lag(abs(DynareModel.aux_vars(i).orig_lead_lag));
case 3 % lag on exogenous variable.
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).endo_index}} = ...
initialconditions{DynareModel.exo_names{DynareModel.aux_vars(i).orig_index}}.lag(abs(DynareModel.aux_vars(i).orig_lead_lag));
case 0 % lead on endogenous variable.
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).endo_index}} = ...
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).orig_index}}.lead(abs(DynareModel.aux_vars(i).orig_lead_lag));
case 2 % lead on exogenous variable.
initialconditions{DynareModel.endo_names{DynareModel.aux_vars(i).endo_index}} = ...
initialconditions{DynareModel.exo_names{DynareModel.aux_vars(i).orig_index}}.lead(abs(DynareModel.aux_vars(i).orig_lead_lag));
otherwise
error("This is a bug! PLease report to Dynare developpers.")
end
end
end
% Get the list of endogenous and exogenous variables. % Get the list of endogenous and exogenous variables.
endo_names = DynareModel.endo_names; endo_names = DynareModel.endo_names;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment