diff --git a/matlab/ols/handle_constant_eqs.m b/matlab/ols/handle_constant_eqs.m index 2ad9a382f..bd69679e4 100644 --- a/matlab/ols/handle_constant_eqs.m +++ b/matlab/ols/handle_constant_eqs.m @@ -1,16 +1,14 @@ -function [ast, ds] = handle_constant_eqs(ast, ds) -%function [ast, ds] = handle_constant_eqs(ast, ds) +function ast = handle_constant_eqs(ast) +%function ast = handle_constant_eqs(ast) % % Code to handle equations of type `X = 0;` in AST. Returns equation(s) -% removed from AST and ds.X == 0. +% removed from AST. % % INPUTS % ast [cell array] JSON representation of abstract syntax tree -% ds [dseries] data to be updated % % OUTPUTS % ast [cell array] updated JSON representation of abstract syntax tree -% ds [dseries] data to be updated % % SPECIAL REQUIREMENTS % none @@ -32,7 +30,7 @@ function [ast, ds] = handle_constant_eqs(ast, ds) % You should have received a copy of the GNU General Public License % along with Dynare. If not, see . -if nargin ~= 2 +if nargin ~= 1 error('Incorrect number of arguments to function') end @@ -40,18 +38,12 @@ if isempty(ast) || ~iscell(ast) error('ast must be a cell') end -if isempty(ds) || ~isdseries(ds) - error('ds must be a nonempty dseries') -end - for i = length(ast):-1:1 assert(strcmp(ast{i}.AST.node_type, 'BinaryOpNode') && strcmp(ast{i}.AST.op, '='), 'Expecting equation'); if strcmp(ast{i}.AST.arg2.node_type, 'NumConstNode') if ~strcmp(ast{i}.AST.arg1.node_type, 'VariableNode') error('At the moment only handling Variable Nodes on LHS') end - ds.(ast{i}.AST.arg1.name) = ... - dseries(ast{i}.AST.arg2.value*ones(ds.nobs, 1), ds.firstdate, ast{i}.AST.arg1.name); ast = ast([1:i-1, i+1:end]); end end diff --git a/matlab/ols/sur.m b/matlab/ols/sur.m index 5bef532f4..e46d422bd 100644 --- a/matlab/ols/sur.m +++ b/matlab/ols/sur.m @@ -59,8 +59,7 @@ else end %% Get Equation(s) -ast = get_ast(eqtags); -[ast, ds] = handle_constant_eqs(ast, ds); +ast = handle_constant_eqs(get_ast(eqtags)); neqs = length(ast); %% Find parameters and variable names in equations and setup estimation matrices diff --git a/preprocessor b/preprocessor index c5fc2e38c..1e071ca49 160000 --- a/preprocessor +++ b/preprocessor @@ -1 +1 @@ -Subproject commit c5fc2e38c1361aef5820f91a4b1d0375e97f3af9 +Subproject commit 1e071ca499c30b4e112d1ee032181f27057ef46c