From: bangerth Date: Mon, 31 Dec 2012 01:03:37 +0000 (+0000) Subject: Do not worry too much about the 1d case -- everything is cheap there. Conserve X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=239c5e8a5dae5503ae9cd221178a6ef3e8956a52;p=dealii-svn.git Do not worry too much about the 1d case -- everything is cheap there. Conserve some memory also in the MG case and thereby resolve a TODO. git-svn-id: https://svn.dealii.org/branches/branch_deprecated@27879 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/source/dofs/dof_renumbering.cc b/deal.II/source/dofs/dof_renumbering.cc index 4b26224d44..439bfe6128 100644 --- a/deal.II/source/dofs/dof_renumbering.cc +++ b/deal.II/source/dofs/dof_renumbering.cc @@ -456,21 +456,12 @@ namespace DoFRenumbering constraints.close (); SparsityPattern sparsity; - if (DH::dimension < 2) - { - sparsity.reinit (dof_handler.n_dofs(), - dof_handler.n_dofs(), - dof_handler.max_couplings_between_dofs()); - DoFTools::make_sparsity_pattern (dof_handler, sparsity, constraints); - sparsity.compress(); - } - else - { - CompressedSimpleSparsityPattern csp (dof_handler.n_dofs(), - dof_handler.n_dofs()); - DoFTools::make_sparsity_pattern (dof_handler, csp, constraints); - sparsity.copy_from (csp); - } + { + CompressedSimpleSparsityPattern csp (dof_handler.n_dofs(), + dof_handler.n_dofs()); + DoFTools::make_sparsity_pattern (dof_handler, csp, constraints); + sparsity.copy_from (csp); + } // constraints are not needed anymore constraints.clear (); @@ -494,12 +485,13 @@ namespace DoFRenumbering const bool reversed_numbering, const std::vector &starting_indices) { -//TODO: we should be doing the same here as in the other compute_CMK function to preserve some memory - - // make the connection graph - SparsityPattern sparsity (dof_handler.n_dofs(level), - dof_handler.max_couplings_between_dofs()); - MGTools::make_sparsity_pattern (dof_handler, sparsity, level); + SparsityPattern sparsity; + { + CompressedSimpleSparsityPattern csp (dof_handler.n_dofs(level), + dof_handler.n_dofs(level)); + MGDoFTools::make_sparsity_pattern (dof_handler, csp, level); + sparsity.copy_from (csp); + } std::vector new_indices(sparsity.n_rows()); SparsityTools::reorder_Cuthill_McKee (sparsity, new_indices,