From 55a63d3da7dbd8ceec3b349266eb3796790540c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Charybdis=29?= Date: Wed, 2 Oct 2019 10:38:56 +0200 Subject: [PATCH] Fixed substitution for lagged variables unavailable in the database. --- matlab/+equation/evaluate.m | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/matlab/+equation/evaluate.m b/matlab/+equation/evaluate.m index 20992be9b..2ff067bcb 100644 --- a/matlab/+equation/evaluate.m +++ b/matlab/+equation/evaluate.m @@ -89,8 +89,9 @@ for i=1:length(eqtags) for j=1:length(enames) if ismember(enames{j}, ds.name) RHS = exactstrrep(RHS, enames{j}, sprintf('ds(range).%s', enames{j})); - elseif ~isequal(enames{j}, lhs) - error('Endogenous variable %s is unknown in dseries objet.', enames{j}) + else + RHS = exactstrrep(RHS, sprintf('%s\\((\\-)*\\d\\)|%s', enames{j}, enames{j}), '0'); + warning('Endogenous variable %s is unknown in dseries objet. Assign zero value.', enames{j}) end end % Substitute exogenous variable x with ds.x, except if