]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Eliminate unused ConstraintMatrix in tests 3150/head
authorDaniel Arndt <d.arndt@math.uni-goettingen.de>
Thu, 22 Sep 2016 20:25:54 +0000 (22:25 +0200)
committerDaniel Arndt <d.arndt@math.uni-goettingen.de>
Thu, 22 Sep 2016 20:25:54 +0000 (22:25 +0200)
27 files changed:
tests/matrix_free/parallel_multigrid_adaptive.cc
tests/mpi/multigrid_adaptive.cc
tests/mpi/multigrid_uniform.cc
tests/multigrid/mg_coarse_01.cc
tests/multigrid/mg_output_dirichlet.cc
tests/multigrid/mg_output_neumann.cc
tests/multigrid/mg_renumbered_01.cc
tests/multigrid/mg_renumbered_03.cc
tests/multigrid/step-16-02.cc
tests/multigrid/step-16-03.cc
tests/multigrid/step-16-04.cc
tests/multigrid/step-16-50-mpi-linear-operator.cc
tests/multigrid/step-16-50-mpi-smoother.cc
tests/multigrid/step-16-50-mpi.cc
tests/multigrid/step-16-50-serial.cc
tests/multigrid/step-16-bdry1.cc
tests/multigrid/step-16.cc
tests/multigrid/step-50_01.cc
tests/multigrid/transfer_04.cc
tests/multigrid/transfer_matrix_free_01.cc
tests/multigrid/transfer_matrix_free_02.cc
tests/multigrid/transfer_matrix_free_03.cc
tests/multigrid/transfer_matrix_free_06.cc
tests/multigrid/transfer_prebuilt_02.cc
tests/multigrid/transfer_prebuilt_03.cc
tests/multigrid/transfer_prebuilt_04.cc
tests/multigrid/transfer_system_adaptive_02.cc

index 0de815ad43f6182ddbd8762eb58907040389abf7..1ac481fb7673a14b6601ecb4be6cf56cdf7a4dbc 100644 (file)
@@ -374,11 +374,9 @@ class MGTransferMF : public MGTransferPrebuilt<LinearAlgebra::distributed::Vecto
 {
 public:
   MGTransferMF(const MGLevelObject<LAPLACEOPERATOR> &laplace,
-               const ConstraintMatrix &hanging_node_constraints,
                const MGConstrainedDoFs &mg_constrained_dofs)
     :
-    MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >(hanging_node_constraints,
-        mg_constrained_dofs),
+    MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >(mg_constrained_dofs),
     laplace_operator (laplace)
   {
   }
@@ -493,7 +491,6 @@ void do_test (const DoFHandler<dim>  &dof)
     mg_interface_matrices[level].initialize(mg_matrices[level]);
 
   MGTransferMF<LevelMatrixType> mg_transfer(mg_matrices,
-                                            hanging_node_constraints,
                                             mg_constrained_dofs);
   mg_transfer.build_matrices(dof);
 
index d6cfd8d5dbf4e51dd747980cbcca81e9731e1202..5f4ec9248c52a03b7e38cc683d1d7ed18bf791f9 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2008 - 2015 by the deal.II authors
+// Copyright (C) 2008 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -95,7 +95,6 @@ namespace Step50
 
     matrix_t system_matrix;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -186,8 +185,6 @@ namespace Step50
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
 
     constraints.clear ();
-    hanging_node_constraints.clear ();
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -197,7 +194,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern csp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, csp, constraints);
@@ -389,7 +385,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::solve ()
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     matrix_t coarse_matrix;
index b986d675b73f2a56b3c5281d7d5ead434160b4a5..fb75b2a4967a4941e7991c03048be64d6910d3f5 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2008 - 2015 by the deal.II authors
+// Copyright (C) 2008 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -95,7 +95,6 @@ namespace Step50
 
     matrix_t system_matrix;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -186,8 +185,6 @@ namespace Step50
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
 
     constraints.clear ();
-    hanging_node_constraints.clear ();
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -197,7 +194,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern csp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, csp, constraints);
@@ -375,7 +371,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::solve ()
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     matrix_t coarse_matrix;
index 680608db8d84796ad60927c4cfb562ea6d0a8678..5f65bac14cd6b6608e7972a1df719577bc249877 100644 (file)
@@ -111,7 +111,6 @@ namespace Step50
 
     IndexSet locally_relevant_set;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -207,8 +206,6 @@ namespace Step50
     solution.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
     constraints.reinit (locally_relevant_set);
-    hanging_node_constraints.reinit (locally_relevant_set);
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -218,7 +215,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern dsp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, dsp, constraints);
@@ -446,7 +442,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::vcycle (const MGCoarseGridBase<vector_t> &coarse_grid_solver)
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     typedef LA::MPI::PreconditionJacobi Smoother;
index b16fa4a71f8307bbc3a1ba9b5dcc8dbb5d13a935..6f779c54d543bfa2d535bb2fd05ba0efb923caef 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2000 - 2015 by the deal.II authors
+// Copyright (C) 2000 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -217,14 +217,6 @@ void check_simple(const FiniteElement<dim> &fe)
   mgdof_renumbered.distribute_dofs(fe);
   mgdof_renumbered.distribute_mg_dofs(fe);
 
-  ConstraintMatrix     hnc, hnc_renumbered;
-  hnc.clear ();
-  hnc_renumbered.clear ();
-  DoFTools::make_hanging_node_constraints (
-    mgdof,
-    hnc);
-  hnc.close ();
-
   std::vector<unsigned int> block_component (4,0);
   block_component[2] = 1;
   block_component[3] = 1;
@@ -233,21 +225,16 @@ void check_simple(const FiniteElement<dim> &fe)
   for (unsigned int level=0; level<tr.n_levels(); ++level)
     DoFRenumbering::component_wise (mgdof_renumbered, level, block_component);
 
-  DoFTools::make_hanging_node_constraints (
-    mgdof_renumbered,
-    hnc_renumbered);
-  hnc_renumbered.close ();
-
   MGConstrainedDoFs mg_constrained_dofs;
   mg_constrained_dofs.initialize(mgdof, dirichlet_boundary_functions);
 
   MGConstrainedDoFs mg_constrained_dofs_renumbered;
   mg_constrained_dofs_renumbered.initialize(mgdof_renumbered, dirichlet_boundary_functions);
 
-  MGTransferPrebuilt<Vector<double> > transfer(hnc, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > transfer(mg_constrained_dofs);
   transfer.build_matrices(mgdof);
 
-  MGTransferPrebuilt<Vector<double> > transfer_renumbered(hnc_renumbered, mg_constrained_dofs_renumbered);
+  MGTransferPrebuilt<Vector<double> > transfer_renumbered(mg_constrained_dofs_renumbered);
   transfer_renumbered.build_matrices(mgdof_renumbered);
 
   Vector<double> u(mgdof.n_dofs());
index 5599c95deb5f558fad1f8530d8b0affb70bcb578..1a2d4c047ebec331d18cba67471474ea818b52a3 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2000 - 2015 by the deal.II authors
+// Copyright (C) 2000 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -215,14 +215,6 @@ void check_simple(const FiniteElement<dim> &fe)
   mgdof_renumbered.distribute_dofs(fe);
   mgdof_renumbered.distribute_mg_dofs(fe);
 
-  ConstraintMatrix     hnc, hnc_renumbered;
-  hnc.clear ();
-  hnc_renumbered.clear ();
-  DoFTools::make_hanging_node_constraints (
-    mgdof,
-    hnc);
-  hnc.close ();
-
   std::vector<unsigned int> block_component (4,0);
   block_component[2] = 1;
   block_component[3] = 1;
@@ -231,21 +223,16 @@ void check_simple(const FiniteElement<dim> &fe)
   for (unsigned int level=0; level<tr.n_levels(); ++level)
     DoFRenumbering::component_wise (mgdof_renumbered, level, block_component);
 
-  DoFTools::make_hanging_node_constraints (
-    mgdof_renumbered,
-    hnc_renumbered);
-  hnc_renumbered.close ();
-
   MGConstrainedDoFs mg_constrained_dofs;
   mg_constrained_dofs.initialize(mgdof, dirichlet_boundary_functions);
 
   MGConstrainedDoFs mg_constrained_dofs_renumbered;
   mg_constrained_dofs_renumbered.initialize(mgdof_renumbered, dirichlet_boundary_functions);
 
-  MGTransferPrebuilt<Vector<double> > transfer(hnc, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > transfer(mg_constrained_dofs);
   transfer.build_matrices(mgdof);
 
-  MGTransferPrebuilt<Vector<double> > transfer_renumbered(hnc_renumbered, mg_constrained_dofs_renumbered);
+  MGTransferPrebuilt<Vector<double> > transfer_renumbered(mg_constrained_dofs_renumbered);
   transfer_renumbered.build_matrices(mgdof_renumbered);
 
   // Fill vector u with some cell based numbering
index 3cdcc92afe3752eae8f888d17d224098e3b0519b..9502a4b6e95b64d195b52e4e2b154c81c9c9309b 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2010 - 2015 by the deal.II authors
+// Copyright (C) 2010 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -340,12 +340,9 @@ void LaplaceProblem<dim>::test ()
   MGConstrainedDoFs mg_constrained_dofs_renumbered;
   mg_constrained_dofs_renumbered.initialize(mg_dof_handler_renumbered, dirichlet_boundary);
 
-  ConstraintMatrix constraints;
-  constraints.close();
-
-  MGTransferPrebuilt<Vector<double> > mg_transfer (constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > mg_transfer (mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
-  MGTransferPrebuilt<Vector<double> > mg_transfer_renumbered (constraints, mg_constrained_dofs_renumbered);
+  MGTransferPrebuilt<Vector<double> > mg_transfer_renumbered (mg_constrained_dofs_renumbered);
   mg_transfer_renumbered.build_matrices(mg_dof_handler_renumbered);
 
   FullMatrix<double> coarse_matrix;
index ba954a3ad78e78495dd368a2395d508035cd9bd8..fae5912959917967d2c68b0e72afe10641225613 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2013 - 2015 by the deal.II authors
+// Copyright (C) 2013 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -335,12 +335,9 @@ void LaplaceProblem<dim>::test ()
   MGConstrainedDoFs mg_constrained_dofs_renumbered;
   mg_constrained_dofs_renumbered.initialize(mg_dof_handler_renumbered, dirichlet_boundary);
 
-  ConstraintMatrix constraints;
-  constraints.close();
-
-  MGTransferPrebuilt<Vector<double> > mg_transfer (constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > mg_transfer (mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
-  MGTransferPrebuilt<Vector<double> > mg_transfer_renumbered (constraints, mg_constrained_dofs_renumbered);
+  MGTransferPrebuilt<Vector<double> > mg_transfer_renumbered (mg_constrained_dofs_renumbered);
   mg_transfer_renumbered.build_matrices(mg_dof_handler_renumbered);
 
   Vector<double> test;
index f0db1c43d63ca8dffac95116c9c75a6ba746f5b8..fad336ce31332116329c74104c5ef16e4a59b402 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2003 - 2015 by the deal.II authors
+// Copyright (C) 2003 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -140,7 +140,6 @@ private:
   SparsityPattern      sparsity_pattern;
   SparseMatrix<double> system_matrix;
 
-  ConstraintMatrix     hanging_node_constraints;
   ConstraintMatrix     constraints;
 
   Vector<double>       solution;
@@ -239,9 +238,7 @@ void LaplaceProblem<dim>::setup_system ()
   system_rhs.reinit (mg_dof_handler.n_dofs());
 
   constraints.clear ();
-  hanging_node_constraints.clear ();
   DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
-  DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
   typename FunctionMap<dim>::type      dirichlet_boundary;
   ZeroFunction<dim>                    homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -251,7 +248,6 @@ void LaplaceProblem<dim>::setup_system ()
                                             dirichlet_boundary,
                                             constraints);
   constraints.close ();
-  hanging_node_constraints.close ();
   constraints.condense (sparsity_pattern);
   sparsity_pattern.compress();
   system_matrix.reinit (sparsity_pattern);
@@ -454,7 +450,7 @@ void LaplaceProblem<dim>::assemble_multigrid (const bool &use_mw)
 template <int dim>
 void LaplaceProblem<dim>::solve ()
 {
-  MGTransferPrebuilt<Vector<double> > mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > mg_transfer(mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
 
   FullMatrix<double> coarse_matrix;
index 3b34b5585059080a46b90ce41f6c4e7c85cac264..93c7efad497f873199a9763e6be0e24bb7c0e671 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2003 - 2015 by the deal.II authors
+// Copyright (C) 2003 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -80,7 +80,6 @@ private:
   SparsityPattern      sparsity_pattern;
   SparseMatrix<double> system_matrix;
 
-  ConstraintMatrix     hanging_node_constraints;
   ConstraintMatrix     constraints;
 
   Vector<double>       solution;
@@ -169,9 +168,7 @@ void LaplaceProblem<dim>::setup_system ()
   system_rhs.reinit (mg_dof_handler.n_dofs());
 
   constraints.clear ();
-  hanging_node_constraints.clear ();
   DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
-  DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
   typename FunctionMap<dim>::type      dirichlet_boundary;
   ZeroFunction<dim>                    homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -181,7 +178,6 @@ void LaplaceProblem<dim>::setup_system ()
                                             dirichlet_boundary,
                                             constraints);
   constraints.close ();
-  hanging_node_constraints.close ();
   constraints.condense (sparsity_pattern);
   sparsity_pattern.compress();
   system_matrix.reinit (sparsity_pattern);
@@ -362,8 +358,7 @@ void LaplaceProblem<dim>::assemble_multigrid ()
 template <int dim>
 void LaplaceProblem<dim>::solve ()
 {
-  MGTransferPrebuilt<Vector<double> > mg_transfer(hanging_node_constraints,
-                                                  mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > mg_transfer(mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
 
   FullMatrix<double> coarse_matrix;
index 8cedd1740065a98c77553bdb6cf80e13978512ca..4dad17ec20d0d6f2261187e7bb2b11e9fc3e9999 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2003 - 2015 by the deal.II authors
+// Copyright (C) 2003 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -82,7 +82,6 @@ private:
   SparsityPattern      sparsity_pattern;
   SparseMatrix<double> system_matrix;
 
-  ConstraintMatrix     hanging_node_constraints;
   ConstraintMatrix     constraints;
 
   LinearAlgebra::distributed::Vector<double> solution;
@@ -173,9 +172,7 @@ void LaplaceProblem<dim>::setup_system ()
   system_rhs.reinit (mg_dof_handler.n_dofs());
 
   constraints.clear ();
-  hanging_node_constraints.clear ();
   DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
-  DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
   typename FunctionMap<dim>::type      dirichlet_boundary;
   ZeroFunction<dim>                    homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -185,7 +182,6 @@ void LaplaceProblem<dim>::setup_system ()
                                             dirichlet_boundary,
                                             constraints);
   constraints.close ();
-  hanging_node_constraints.close ();
   constraints.condense (sparsity_pattern);
   sparsity_pattern.compress();
   system_matrix.reinit (sparsity_pattern);
@@ -372,7 +368,7 @@ template <int dim>
 void LaplaceProblem<dim>::solve ()
 {
   MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >
-  mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+  mg_transfer(mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
 
   SolverControl coarse_solver_control (1000, 1e-10, false, false);
index 376af6d5f9a529bb313427627be3df1eafdbe825..b0f51182756d7b70b3b8615ebb4ce8e2e148cb37 100644 (file)
@@ -112,7 +112,6 @@ namespace Step50
 
     IndexSet locally_relevant_set;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -203,8 +202,6 @@ namespace Step50
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
 
     constraints.reinit (locally_relevant_set);
-    hanging_node_constraints.reinit (locally_relevant_set);
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -214,7 +211,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern dsp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, dsp, constraints);
@@ -424,7 +420,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::solve ()
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     matrix_t &coarse_matrix = mg_matrices[0];
index 3e1851f919d8f3d4a55d85108d9b6a66bc2d3f98..2cfb947c759c6048d108927e559caf9fdd77db2c 100644 (file)
@@ -112,7 +112,6 @@ namespace Step50
 
     IndexSet locally_relevant_set;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -203,8 +202,6 @@ namespace Step50
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
 
     constraints.reinit (locally_relevant_set);
-    hanging_node_constraints.reinit (locally_relevant_set);
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -214,7 +211,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern dsp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, dsp, constraints);
@@ -424,7 +420,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::solve ()
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     // pre and post smoothers:
index 21c0be80f0bc8939785a4cf15d0785f88c2f204f..9fcf2083e8798cac552f9cbde58f3b76e0761792 100644 (file)
@@ -112,7 +112,6 @@ namespace Step50
 
     IndexSet locally_relevant_set;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -203,8 +202,6 @@ namespace Step50
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
 
     constraints.reinit (locally_relevant_set);
-    hanging_node_constraints.reinit (locally_relevant_set);
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -214,7 +211,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern dsp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, dsp, constraints);
@@ -424,7 +420,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::solve ()
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     matrix_t &coarse_matrix = mg_matrices[0];
index 8065556777d2f10d3f88b444b36e7b412ebeb672..2827ece53c032f241ce163cbd8ed0cc0d02c7678 100644 (file)
@@ -85,7 +85,6 @@ private:
   SparsityPattern      sparsity_pattern;
   SparseMatrix<double> system_matrix;
 
-  ConstraintMatrix     hanging_node_constraints;
   ConstraintMatrix     constraints;
 
   Vector<double>       solution;
@@ -174,9 +173,7 @@ void LaplaceProblem<dim>::setup_system ()
   system_rhs.reinit (mg_dof_handler.n_dofs());
 
   constraints.clear ();
-  hanging_node_constraints.clear ();
   DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
-  DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
   typename FunctionMap<dim>::type      dirichlet_boundary;
   ZeroFunction<dim>                    homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -186,7 +183,6 @@ void LaplaceProblem<dim>::setup_system ()
                                             dirichlet_boundary,
                                             constraints);
   constraints.close ();
-  hanging_node_constraints.close ();
   constraints.condense (sparsity_pattern);
   sparsity_pattern.compress();
   system_matrix.reinit (sparsity_pattern);
@@ -370,7 +366,7 @@ void LaplaceProblem<dim>::solve ()
   typedef SparseMatrix<double> matrix_t;
   typedef Vector<double> vector_t;
 
-  MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
 
   matrix_t &coarse_matrix = mg_matrices[0];
index 65654de9f00be60a9866f10afcf3695456a48b3c..4273629136d54b9359f8ab17d47513e5d2e66725 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2003 - 2015 by the deal.II authors
+// Copyright (C) 2003 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -141,7 +141,6 @@ private:
   SparsityPattern      sparsity_pattern;
   SparseMatrix<double> system_matrix;
 
-  ConstraintMatrix     hanging_node_constraints;
   ConstraintMatrix     constraints;
 
   Vector<double>       solution;
@@ -240,9 +239,7 @@ void LaplaceProblem<dim>::setup_system ()
   system_rhs.reinit (mg_dof_handler.n_dofs());
 
   constraints.clear ();
-  hanging_node_constraints.clear ();
   DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
-  DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
   typename FunctionMap<dim>::type      dirichlet_boundary;
   ZeroFunction<dim>                    homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -252,7 +249,6 @@ void LaplaceProblem<dim>::setup_system ()
                                             dirichlet_boundary,
                                             constraints);
   constraints.close ();
-  hanging_node_constraints.close ();
   constraints.condense (sparsity_pattern);
   sparsity_pattern.compress();
   system_matrix.reinit (sparsity_pattern);
@@ -472,7 +468,7 @@ void LaplaceProblem<dim>::assemble_multigrid (bool use_mw)
 template <int dim>
 void LaplaceProblem<dim>::solve (bool use_mw)
 {
-  MGTransferPrebuilt<Vector<double> > mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > mg_transfer(mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
 
   FullMatrix<double> coarse_matrix;
index df7f05abfd7d01ad9b6230b1ec74079b62af7d02..12702cee2d32ee5434fe3d5ded6cc13acc18cf66 100644 (file)
@@ -1,6 +1,6 @@
 // ---------------------------------------------------------------------
 //
-// Copyright (C) 2003 - 2015 by the deal.II authors
+// Copyright (C) 2003 - 2016 by the deal.II authors
 //
 // This file is part of the deal.II library.
 //
@@ -81,7 +81,6 @@ private:
   SparsityPattern      sparsity_pattern;
   SparseMatrix<double> system_matrix;
 
-  ConstraintMatrix     hanging_node_constraints;
   ConstraintMatrix     constraints;
 
   Vector<double>       solution;
@@ -177,9 +176,7 @@ void LaplaceProblem<dim>::setup_system ()
   system_rhs.reinit (mg_dof_handler.n_dofs());
 
   constraints.clear ();
-  hanging_node_constraints.clear ();
   DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
-  DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
   typename FunctionMap<dim>::type      dirichlet_boundary;
   ZeroFunction<dim>                    homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -189,7 +186,6 @@ void LaplaceProblem<dim>::setup_system ()
                                             dirichlet_boundary,
                                             constraints);
   constraints.close ();
-  hanging_node_constraints.close ();
   constraints.condense (sparsity_pattern);
   sparsity_pattern.compress();
   system_matrix.reinit (sparsity_pattern);
@@ -449,7 +445,7 @@ void LaplaceProblem<dim>::assemble_multigrid ()
 template <int dim>
 void LaplaceProblem<dim>::solve ()
 {
-  MGTransferPrebuilt<Vector<double> > mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > mg_transfer(mg_constrained_dofs);
   mg_transfer.build_matrices(mg_dof_handler);
 
   FullMatrix<double> coarse_matrix;
index d1fdeeb6fdc4f243a47c58036d7cc28bda7ae6d3..10a8815851e918255d07fb4c30c5d6b161a87945 100644 (file)
@@ -109,7 +109,6 @@ namespace Step50
 
     IndexSet locally_relevant_set;
 
-    ConstraintMatrix     hanging_node_constraints;
     ConstraintMatrix     constraints;
 
     vector_t       solution;
@@ -205,8 +204,6 @@ namespace Step50
     solution.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
     system_rhs.reinit(mg_dof_handler.locally_owned_dofs(), MPI_COMM_WORLD);
     constraints.reinit (locally_relevant_set);
-    hanging_node_constraints.reinit (locally_relevant_set);
-    DoFTools::make_hanging_node_constraints (mg_dof_handler, hanging_node_constraints);
     DoFTools::make_hanging_node_constraints (mg_dof_handler, constraints);
 
     typename FunctionMap<dim>::type      dirichlet_boundary;
@@ -216,7 +213,6 @@ namespace Step50
                                               dirichlet_boundary,
                                               constraints);
     constraints.close ();
-    hanging_node_constraints.close ();
 
     DynamicSparsityPattern dsp(mg_dof_handler.n_dofs(), mg_dof_handler.n_dofs());
     DoFTools::make_sparsity_pattern (mg_dof_handler, dsp, constraints);
@@ -422,7 +418,7 @@ namespace Step50
   template <int dim>
   void LaplaceProblem<dim>::solve ()
   {
-    MGTransferPrebuilt<vector_t> mg_transfer(hanging_node_constraints, mg_constrained_dofs);
+    MGTransferPrebuilt<vector_t> mg_transfer(mg_constrained_dofs);
     mg_transfer.build_matrices(mg_dof_handler);
 
     matrix_t &coarse_matrix = mg_matrices[0];
index 055d9bdbc2353e382baeb971091959aa1ef6a554..feee72b3bfbd74e74be683fdf31cf2a62d68588a 100644 (file)
@@ -131,7 +131,7 @@ void check_fe(FiniteElement<dim> &fe)
   DoFTools::make_hanging_node_constraints (dofh, hanging_node_constraints);
   hanging_node_constraints.close();
 
-  MGTransferPrebuilt<vector_t> transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<vector_t> transfer(mg_constrained_dofs);
   transfer.build_matrices(dofh);
   //transfer.print_indices(deallog.get_file_stream());
 
index 22980e61ae7df84c23a8e43863fa90c2ccafb3d1..ded600372809cd716b915892718f1fea9eaaece4 100644 (file)
@@ -62,7 +62,6 @@ void check(const unsigned int fe_degree)
       mgdof.distribute_dofs(fe);
       mgdof.distribute_mg_dofs(fe);
 
-      ConstraintMatrix hanging_node_constraints;
       MGConstrainedDoFs mg_constrained_dofs;
       ZeroFunction<dim> zero_function;
       typename FunctionMap<dim>::type dirichlet_boundary;
@@ -71,7 +70,7 @@ void check(const unsigned int fe_degree)
 
       // build reference
       MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >
-      transfer_ref(hanging_node_constraints, mg_constrained_dofs);
+      transfer_ref(mg_constrained_dofs);
       transfer_ref.build_matrices(mgdof);
 
       // build matrix-free transfer
index 2aa638c5cda46b562d92781550942dd139c759cf..b6afc27b22e7fe96be353e9e1ab36ee4ce49705e 100644 (file)
@@ -82,13 +82,6 @@ void check(const unsigned int fe_degree)
       mgdof.distribute_dofs(fe);
       mgdof.distribute_mg_dofs(fe);
 
-      ConstraintMatrix hanging_node_constraints;
-      IndexSet relevant_dofs;
-      DoFTools::extract_locally_relevant_dofs(mgdof, relevant_dofs);
-      hanging_node_constraints.reinit(relevant_dofs);
-      DoFTools::make_hanging_node_constraints(mgdof, hanging_node_constraints);
-      hanging_node_constraints.close();
-
       MGConstrainedDoFs mg_constrained_dofs;
       ZeroFunction<dim> zero_function;
       typename FunctionMap<dim>::type dirichlet_boundary;
@@ -97,7 +90,7 @@ void check(const unsigned int fe_degree)
 
       // build reference
       MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >
-      transfer_ref(hanging_node_constraints, mg_constrained_dofs);
+      transfer_ref(mg_constrained_dofs);
       transfer_ref.build_matrices(mgdof);
 
       // build matrix-free transfer
index 63dfee45d9206fd2d577af815bc936d5361b90f1..3b114db1a3f10612435888510d9d1eacce128066 100644 (file)
@@ -59,13 +59,6 @@ void check(const unsigned int fe_degree)
       mgdof.distribute_dofs(fe);
       mgdof.distribute_mg_dofs(fe);
 
-      ConstraintMatrix hanging_node_constraints;
-      IndexSet relevant_dofs;
-      DoFTools::extract_locally_relevant_dofs(mgdof, relevant_dofs);
-      hanging_node_constraints.reinit(relevant_dofs);
-      DoFTools::make_hanging_node_constraints(mgdof, hanging_node_constraints);
-      hanging_node_constraints.close();
-
       MGConstrainedDoFs mg_constrained_dofs;
       ZeroFunction<dim> zero_function;
       typename FunctionMap<dim>::type dirichlet_boundary;
@@ -74,7 +67,7 @@ void check(const unsigned int fe_degree)
 
       // build reference
       MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >
-      transfer_ref(hanging_node_constraints, mg_constrained_dofs);
+      transfer_ref(mg_constrained_dofs);
       transfer_ref.build_matrices(mgdof);
 
       // build matrix-free transfer
index a27626bc8c9a6a59f4512d5be3c806c61972465e..3b0dd5c89bdf941c69190d6a792da9bd0dc66d51 100644 (file)
@@ -84,13 +84,6 @@ void check(const unsigned int fe_degree)
       mgdof.distribute_dofs(fe);
       mgdof.distribute_mg_dofs(fe);
 
-      ConstraintMatrix hanging_node_constraints;
-      IndexSet relevant_dofs;
-      DoFTools::extract_locally_relevant_dofs(mgdof, relevant_dofs);
-      hanging_node_constraints.reinit(relevant_dofs);
-      DoFTools::make_hanging_node_constraints(mgdof, hanging_node_constraints);
-      hanging_node_constraints.close();
-
       MGConstrainedDoFs mg_constrained_dofs;
       ZeroFunction<dim> zero_function;
       typename FunctionMap<dim>::type dirichlet_boundary;
@@ -99,7 +92,7 @@ void check(const unsigned int fe_degree)
 
       // build reference
       MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >
-      transfer_ref(hanging_node_constraints, mg_constrained_dofs);
+      transfer_ref(mg_constrained_dofs);
       transfer_ref.build_matrices(mgdof);
 
       // build matrix-free transfer
index e16f840aef7b7dc3c0aaf928a7e3a25d89777247..2f8a7013829bc9d8e3cd1e39b59cea3218b4757a 100644 (file)
@@ -58,14 +58,10 @@ void check_simple(const FiniteElement<dim> &fe)
   mgdof.distribute_dofs(fe);
   mgdof.distribute_mg_dofs(fe);
 
-  ConstraintMatrix     hanging_node_constraints;
-  DoFTools::make_hanging_node_constraints (mgdof, hanging_node_constraints);
-  hanging_node_constraints.close ();
-
   MGConstrainedDoFs mg_constrained_dofs;
   mg_constrained_dofs.initialize(mgdof);
 
-  MGTransferPrebuilt<Vector<double> > transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > transfer(mg_constrained_dofs);
   transfer.build_matrices(mgdof);
 
   transfer.print_matrices(deallog.get_file_stream());
index 56011f1aea38b3b694b7d69fa63027d9e101383e..430dcd50a696472d7bebc2800c51ea25ac325c79 100644 (file)
@@ -59,10 +59,6 @@ void check_simple(const FiniteElement<dim> &fe)
   mgdof.distribute_dofs(fe);
   mgdof.distribute_mg_dofs(fe);
 
-  ConstraintMatrix     hanging_node_constraints;
-  DoFTools::make_hanging_node_constraints (mgdof, hanging_node_constraints);
-  hanging_node_constraints.close ();
-
   typename FunctionMap<dim>::type dirichlet_boundary;
   ZeroFunction<dim> homogeneous_dirichlet_bc (1);
   dirichlet_boundary[0] = &homogeneous_dirichlet_bc;
@@ -70,7 +66,7 @@ void check_simple(const FiniteElement<dim> &fe)
   MGConstrainedDoFs mg_constrained_dofs;
   mg_constrained_dofs.initialize(mgdof, dirichlet_boundary);
 
-  MGTransferPrebuilt<Vector<double> > transfer(hanging_node_constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > transfer(mg_constrained_dofs);
   transfer.build_matrices(mgdof);
 
   transfer.print_matrices(deallog.get_file_stream());
index 15e61789e00234004d2ae931c5d9c39930b5eef0..ca1932a15a32247212406d59e7353252a98cf3b4 100644 (file)
@@ -56,13 +56,6 @@ void check()
       mgdof.distribute_dofs(fe);
       mgdof.distribute_mg_dofs(fe);
 
-      ConstraintMatrix hanging_node_constraints;
-      IndexSet relevant_dofs;
-      DoFTools::extract_locally_relevant_dofs(mgdof, relevant_dofs);
-      hanging_node_constraints.reinit(relevant_dofs);
-      DoFTools::make_hanging_node_constraints(mgdof, hanging_node_constraints);
-      hanging_node_constraints.close();
-
       MGConstrainedDoFs mg_constrained_dofs;
       ZeroFunction<dim> zero_function;
       typename FunctionMap<dim>::type dirichlet_boundary;
@@ -85,7 +78,7 @@ void check()
         }
 
       MGTransferPrebuilt<LinearAlgebra::distributed::Vector<double> >
-      transfer_ref(hanging_node_constraints, mg_constrained_dofs);
+      transfer_ref(mg_constrained_dofs);
       transfer_ref.build_matrices(mgdof);
     }
 }
index f9d920ac120b3644688388b7792efda954944c83..65053d111edb1bc169e6347d590cdcf53fabd2e2 100644 (file)
@@ -154,8 +154,7 @@ void check (const FiniteElement<dim> &fe)
   MGConstrainedDoFs mg_constrained_dofs;
   mg_constrained_dofs.initialize(mg_dof_handler, dirichlet_boundary);
 
-  ConstraintMatrix constraints;
-  MGTransferPrebuilt<Vector<double> > transfer(constraints, mg_constrained_dofs);
+  MGTransferPrebuilt<Vector<double> > transfer(mg_constrained_dofs);
   transfer.build_matrices(mg_dof_handler);
 
   FullMatrix<double> prolong_0_1 (mg_dof_handler.n_dofs(1),

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.