dynare/tests/reporting/ResidTablePage.m

66 lines
2.2 KiB
Matlab

function rep = ResidTablePage(rep, countryAbbr, countryName, db_q, dc_q, trange, vline_after)
% Copyright © 2011-2019 Dynare Team
%
% This file is part of Dynare.
%
% Dynare is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
%
% Dynare is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <https://www.gnu.org/licenses/>.
seriesNames = {{'RES_RS_'}, ...
{'RES_RR_BAR_'}, ...
{'RES_BLT_'}, ...
{'RES_BLT_BAR_'}, ...
{'RES_YY_'}, ...
{'RES_Y_'}, ...
{'RES_LGDP_BAR_'}, ...
{'RES_G_'}, ...
{'RES_UNR_GAP_'}, ...
{'RES_UNR_G_'}, ...
{'RES_UNR_BAR_'}, ...
{'RES_RR_DIFF_'}, ...
{'RES_LZ_BAR_'}, ...
{'RES_DOT_LZ_BAR_'}, ...
{'RES_PIETAR_'}, ...
{'RES_PIE_'}, ...
{'RES_PIEX_'}, ...
{'RES_PIE_GAS_'}, ...
{'RES_PIE_CONSFOOD_'}};
otherThree = {'EA6', 'LA6', 'RC6'};
notForOtherThree = {'RES_BLT_', 'RES_BLT_BAR_', 'RES_UNR_GAP_', 'RES_UNR_G_', 'RES_UNR_BAR_'};
notForUS = {'RES_RR_DIFF_', 'RES_LZ_BAR_'};
firstThree = {'US', 'EU', 'JA'};
notForFirstThree = {'RES_DOT_LZ_BAR_', 'RES_PIETAR_'};
rep.addTable('title', countryName, ...
'range', trange, ...
'vlineAfter', vline_after);
for i=1:length(seriesNames)
if (any(strcmp(countryAbbr, otherThree)) && ...
any(strcmp(seriesNames{i}{1}, notForOtherThree))) || ...
(any(strcmp(countryAbbr, 'US')) && any(strcmp(seriesNames{i}{1}, notForUS))) || ...
(any(strcmp(countryAbbr, firstThree)) && any(strcmp(seriesNames{i}{1}, notForFirstThree)))
continue
end
rep.addSeries('data', db_q{[seriesNames{i}{1} countryAbbr]});
delta = db_q{[seriesNames{i}{1} countryAbbr]}-dc_q{[seriesNames{i}{1} countryAbbr]};
delta.tex_rename_('$\Delta$');
rep.addSeries('data', delta, ...
'tableShowMarkers', true, ...
'tableAlignRight', true);
end
end