From 3d4ae90e229f38e4d4b73ef81e441fc244af878e Mon Sep 17 00:00:00 2001 From: adjemian Date: Wed, 10 Oct 2007 13:20:09 +0000 Subject: [PATCH] Code factorization. git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1422 ac1d8469-bf42-47a9-8791-bf33cf982152 --- .../dsge_posterior_theoretical_covariance.m | 23 +--------- matlab/set_stationary_variables_list.m | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+), 22 deletions(-) create mode 100644 matlab/set_stationary_variables_list.m diff --git a/matlab/dsge_posterior_theoretical_covariance.m b/matlab/dsge_posterior_theoretical_covariance.m index 46d592f05..8adaeb5ec 100644 --- a/matlab/dsge_posterior_theoretical_covariance.m +++ b/matlab/dsge_posterior_theoretical_covariance.m @@ -23,28 +23,7 @@ type = 'posterior';% To be defined as a input argument later... NumberOfSimulations = 800;% To be defined in a global structure... % Set varlist (vartan) if necessary -varlist = options_.varlist; -if isempty(varlist) - varlist = options_.varobs; - options_.varlist = varlist; -end -nvar = rows(varlist); -if ~isempty(options_.unit_root_vars) - vartan = []; - for i=1:nvar - if isempty(strmatch(deblank(varlist(i,:)),options_.unit_root_vars,'exact')) - vartan = strvcat(vartan,varlist(i,:)); - end - end -else - vartan = varlist; -end -nvar = rows(vartan); -ivar = zeros(nvar,1); -for i = 1:nvar - ivar(i) = strmatch(deblank(vartan(i,:)),M_.endo_names,'exact'); -end - +[ivar,vartan] = set_stationary_variables_list(); % Set various parameters & Check or create files and directories if strcmpi(type,'posterior') diff --git a/matlab/set_stationary_variables_list.m b/matlab/set_stationary_variables_list.m new file mode 100644 index 000000000..01f58bfc1 --- /dev/null +++ b/matlab/set_stationary_variables_list.m @@ -0,0 +1,43 @@ +function [ivar,vartan] = set_stationary_variables_list() +% This function builds of vector of indices targeting to the stationary +% variables in varlist. +% +% INPUTS +% None. +% +% OUTPUTS +% o ivar [integer] nvar*1 vector of indices (nvar is the number +% of stationary variables). +% o vartan [char] array of characters (with nvar rows). +% +% ALGORITHM +% None. +% +% SPECIAL REQUIREMENTS +% None. +% +% +% part of DYNARE, copyright Dynare Team (2007) +% Gnu Public License. +global options_ +varlist = options_.varlist; +if isempty(varlist) + varlist = options_.varobs; + options_.varlist = varlist; +end +nvar = rows(varlist); +if ~isempty(options_.unit_root_vars) + vartan = []; + for i=1:nvar + if isempty(strmatch(deblank(varlist(i,:)),options_.unit_root_vars,'exact')) + vartan = strvcat(vartan,varlist(i,:)); + end + end +else + vartan = varlist; +end +nvar = size(vartan,1); +ivar = zeros(nvar,1); +for i = 1:nvar + ivar(i) = strmatch(deblank(vartan(i,:)),M_.endo_names,'exact'); +end \ No newline at end of file