From e39c3bad5b02d24bd12670e7d593b7bf604bc727 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Odysseus=29?= Date: Wed, 29 Jan 2020 11:38:20 +0100 Subject: [PATCH] Fixed aggregate if the equation tag name is not available... ... Or has special characters. In this cases we use the LHS variable as a name for the equation. --- matlab/aggregate.m | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/matlab/aggregate.m b/matlab/aggregate.m index 1ff7859e9..941a6c6a9 100644 --- a/matlab/aggregate.m +++ b/matlab/aggregate.m @@ -79,8 +79,12 @@ for i=1:length(varargin) [lhs, ~] = getequation(model{j+1}); endovar = getendovar(lhs); eqtagname_ = strcat('name=''', endovar{1}, ''''); - if ~isequal(eqtagname{1}, eqtagname_) - model{j} = strrep(model{j}, eqtagname{1}, eqtagname_); + if ~isempty(eqtagname) + if ~isequal(eqtagname{1}, eqtagname_) + model{j} = strrep(model{j}, eqtagname{1}, eqtagname_); + end + else + model{j} = eqtagname_; end eqlist{tagnum,4} = model{j}; eqtag = true; @@ -99,7 +103,7 @@ end eqlist = eqlist(1:eqnum,:); [~, idx] = unique(eqlist(:,1), 'stable'); eqlist = eqlist(idx, :); -eqlist + % Get endogenous variables. elist = cell(MAX_NUMBER_OF_ELEMENTS, 2); enum = 0;