From: Martin Kronbichler Date: Fri, 27 Aug 2010 15:40:07 +0000 (+0000) Subject: Implement 'keep_constrained_entries' part in add_entries_local_to_global for non... X-Git-Tag: v8.0.0~5644 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3ab40403537097efa6378bd86ab922e3e7f89ca;p=dealii.git Implement 'keep_constrained_entries' part in add_entries_local_to_global for non-quadratic matrices. git-svn-id: https://svn.dealii.org/trunk@21754 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/lac/include/lac/constraint_matrix.templates.h b/deal.II/lac/include/lac/constraint_matrix.templates.h index 4717cfa796..f14e65de34 100644 --- a/deal.II/lac/include/lac/constraint_matrix.templates.h +++ b/deal.II/lac/include/lac/constraint_matrix.templates.h @@ -2636,7 +2636,6 @@ add_entries_local_to_global (const std::vector &row_indices, const unsigned int n_local_rows = row_indices.size(); const unsigned int n_local_cols = col_indices.size(); bool dof_mask_is_active = false; - Assert (keep_constrained_entries == false, ExcNotImplemented()); if (dof_mask.n_rows() == n_local_rows && dof_mask.n_cols() == n_local_cols) dof_mask_is_active = true; @@ -2667,6 +2666,23 @@ add_entries_local_to_global (const std::vector &row_indices, return; } + // if constrained entries should be + // kept, need to add rows and columns + // of those to the sparsity pattern + if (keep_constrained_entries == true) + { + for (unsigned int i=0; i