From 0c6151df7a16b14dd2e32384c72fceb7009760df Mon Sep 17 00:00:00 2001 From: Johannes Pfeifer <jpfeifer@gmx.de> Date: Tue, 26 Jan 2021 09:10:55 +0100 Subject: [PATCH] solve_model_for_online_filter.m: fix reduced form dimensions for oder=2 matrices at order=1 --- .../src/solve_model_for_online_filter.m | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/matlab/nonlinear-filters/src/solve_model_for_online_filter.m b/matlab/nonlinear-filters/src/solve_model_for_online_filter.m index 332378d5a9..fbfcb05b62 100644 --- a/matlab/nonlinear-filters/src/solve_model_for_online_filter.m +++ b/matlab/nonlinear-filters/src/solve_model_for_online_filter.m @@ -165,11 +165,13 @@ if nargout>4 ReducedForm.use_k_order_solver = true; ReducedForm.dr = dr; else + n_states=size(dr.ghx,2); + n_shocks=size(dr.ghu,2); ReducedForm.use_k_order_solver = false; - ReducedForm.ghxx = zeros(size(restrict_variables_idx,1),size(dr.kstate,2)); - ReducedForm.ghuu = zeros(size(restrict_variables_idx,1),size(dr.ghu,2)); - ReducedForm.ghxu = zeros(size(restrict_variables_idx,1),size(dr.ghx,2)); - ReducedForm.constant = ReducedForm.steadystate ; + ReducedForm.ghxx = zeros(size(restrict_variables_idx,1),n_states^2); + ReducedForm.ghuu = zeros(size(restrict_variables_idx,1),n_shocks^2); + ReducedForm.ghxu = zeros(size(restrict_variables_idx,1),n_states*n_shocks); + ReducedForm.constant = ReducedForm.steadystate; end ReducedForm.state_variables_steady_state = dr.ys(dr.order_var(state_variables_idx)); ReducedForm.Q = Q; -- GitLab