diff --git a/matlab/global_initialization.m b/matlab/global_initialization.m index 1f8e8d4db..47a7c1027 100644 --- a/matlab/global_initialization.m +++ b/matlab/global_initialization.m @@ -308,6 +308,7 @@ options_.ms.draws_nbr_mean_var_estimate = 200000; options_.ms.draws_nbr_modified_harmonic_mean = 1000000; options_.ms.thinning_factor = 1; options_.ms.dirichlet_scale = [1.0 1.5 2.0]; +options_.ms.vlistlog = []; % Shock decomposition options_.parameter_set = []; diff --git a/matlab/ms-sbvar/msstart_setup.m b/matlab/ms-sbvar/msstart_setup.m index e41559602..50a3b4db2 100644 --- a/matlab/ms-sbvar/msstart_setup.m +++ b/matlab/ms-sbvar/msstart_setup.m @@ -37,14 +37,14 @@ end %2 FFR/100. options_.ms.vlist = [1:size(options_.varobs,1)]; % 1: U; 4: PCE inflation. options_.ms.varlist=cellstr(options_.varobs); -%options_.ms.log_var = [ ]; % subset of "options_.ms.vlist. Variables in log level so that differences are in **monthly** growth, unlike R and U which are in annual percent (divided by 100 already). -options_.ms.percent_var = [1:size(options_.varobs,1)]; % subset of "options_.ms.vlist" +options_.ms.log_var = sort(varlist_indices(options_.ms.vlistlog,options_.varobs)); % subset of "options_.ms.vlist. Variables in log level so that differences are in **monthly** growth, unlike R and U which are in annual percent (divided by 100 already). +options_.ms.percent_var =setdiff(options_.ms.vlist,options_.ms.log_var); %options_.ms.restriction_fname='ftd_upperchol3v'; %Only used by msstart2.m. ylab = options_.ms.varlist; xlab = options_.ms.varlist; %---------------- -nvar = length(options_.ms.vlist); % number of endogenous variables +nvar = size(options_.varobs,1); % number of endogenous variables nlogeno = length(options_.ms.log_var) % number of endogenous variables in options_.ms.log_var npereno = length(options_.ms.percent_var) % number of endogenous variables in options_.ms.percent_var if (nvar~=(nlogeno+npereno)) diff --git a/preprocessor/DynareBison.yy b/preprocessor/DynareBison.yy index 1a25176e9..dd65be761 100644 --- a/preprocessor/DynareBison.yy +++ b/preprocessor/DynareBison.yy @@ -1834,7 +1834,7 @@ o_final_year : FINAL_YEAR EQUAL INT_NUMBER {driver.option_num("ms.final_year",$3 o_final_subperiod : FINAL_SUBPERIOD EQUAL INT_NUMBER {driver.option_num("ms.final_subperiod",$3); }; o_data : DATA EQUAL filename { driver.option_str("ms.data", $3); }; o_vlist : VLIST EQUAL INT_NUMBER {driver.option_num("ms.vlist",$3); }; -o_vlistlog : VLISTLOG EQUAL INT_NUMBER {driver.option_num("ms.vlistlog",$3); }; +o_vlistlog : VLISTLOG EQUAL '(' symbol_list ')' {driver.option_symbol_list("ms.vlistlog"); }; o_vlistper : VLISTPER EQUAL INT_NUMBER {driver.option_num("ms.vlistper",$3); }; o_varlist : VARLIST EQUAL '(' symbol_list ')' {driver.option_symbol_list("ms.varlist"); }; o_restriction_fname : RESTRICTION_FNAME EQUAL NAME {driver.option_str("ms.restriction_fname",$3); };