From 7db02b23e9408983758bb38ba844b4959670b8b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Villemot?= <sebastien@dynare.org> Date: Tue, 17 Jan 2023 19:04:07 +0100 Subject: [PATCH] Block decomposition: fix sparse indices of static Jacobian when mfs > 0 --- src/StaticModel.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/StaticModel.cc b/src/StaticModel.cc index 0ac6aaf1..5c30f2ad 100644 --- a/src/StaticModel.cc +++ b/src/StaticModel.cc @@ -687,7 +687,8 @@ StaticModel::computeChainRuleJacobian() { auto &[eq, var, lag] { indices }; assert(lag == 0); - blocks_jacobian_sparse_column_major_order[blk].emplace(pair{eq, var}, d1); + if (eq >= nb_recursives && var >= nb_recursives) + blocks_jacobian_sparse_column_major_order[blk].emplace(pair{eq-nb_recursives, var-nb_recursives}, d1); } blocks_jacobian_sparse_colptr[blk] = computeCSCColPtr(blocks_jacobian_sparse_column_major_order[blk], size); } -- GitLab