From 5d2f2e7684dfc60fcd2b564b04b3406c16c343f1 Mon Sep 17 00:00:00 2001 From: Peter Munch Date: Sat, 27 Jun 2020 09:08:27 +0200 Subject: [PATCH] Remove DoFHandlerType from numerics/matrix_creator --- .../numerics/matrix_creator.templates.h | 62 +++++++++---------- 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/include/deal.II/numerics/matrix_creator.templates.h b/include/deal.II/numerics/matrix_creator.templates.h index 76e08845e7..4fc45a43a2 100644 --- a/include/deal.II/numerics/matrix_creator.templates.h +++ b/include/deal.II/numerics/matrix_creator.templates.h @@ -660,22 +660,22 @@ namespace MatrixCreator Scratch() = default; }; - template + template struct CopyData { CopyData(); - unsigned int dofs_per_cell; - std::vector dofs; - std::vector> dof_is_on_face; - typename DoFHandlerType::active_cell_iterator cell; - std::vector> cell_matrix; - std::vector> cell_vector; + unsigned int dofs_per_cell; + std::vector dofs; + std::vector> dof_is_on_face; + typename DoFHandler::active_cell_iterator cell; + std::vector> cell_matrix; + std::vector> cell_vector; }; - template - CopyData::CopyData() + template + CopyData::CopyData() : dofs_per_cell(numbers::invalid_unsigned_int) {} @@ -991,10 +991,10 @@ namespace MatrixCreator typename DoFHandler::active_cell_iterator const &cell, MatrixCreator::internal::AssemblerBoundary::Scratch const &, MatrixCreator::internal::AssemblerBoundary:: - CopyData, number> ©_data, - Mapping const & mapping, - FiniteElement const & fe, - Quadrature const & q, + CopyData & copy_data, + Mapping const & mapping, + FiniteElement const &fe, + Quadrature const & q, std::map *> const & boundary_functions, Function const *const coefficient, @@ -1226,7 +1226,7 @@ namespace MatrixCreator void copy_boundary_mass_matrix_1( MatrixCreator::internal::AssemblerBoundary:: - CopyData, number> const ©_data, + CopyData const ©_data, std::map *> const & boundary_functions, std::vector const &dof_to_boundary_mapping, @@ -1300,8 +1300,7 @@ namespace MatrixCreator void inline create_boundary_mass_matrix_1<1, 3, float>( DoFHandler<1, 3>::active_cell_iterator const & /*cell*/, MatrixCreator::internal::AssemblerBoundary::Scratch const &, - MatrixCreator::internal::AssemblerBoundary::CopyData, - float> + MatrixCreator::internal::AssemblerBoundary::CopyData<1, 3, float> & /*copy_data*/, Mapping<1, 3> const &, FiniteElement<1, 3> const &, @@ -1318,8 +1317,7 @@ namespace MatrixCreator void inline create_boundary_mass_matrix_1<1, 3, double>( DoFHandler<1, 3>::active_cell_iterator const & /*cell*/, MatrixCreator::internal::AssemblerBoundary::Scratch const &, - MatrixCreator::internal::AssemblerBoundary::CopyData, - double> + MatrixCreator::internal::AssemblerBoundary::CopyData<1, 3, double> & /*copy_data*/, Mapping<1, 3> const &, FiniteElement<1, 3> const &, @@ -1383,9 +1381,8 @@ namespace MatrixCreator AssertDimension(n_components, component_mapping.size()); MatrixCreator::internal::AssemblerBoundary::Scratch scratch; - MatrixCreator::internal::AssemblerBoundary:: - CopyData, number> - copy_data; + MatrixCreator::internal::AssemblerBoundary::CopyData + copy_data; WorkStream::run( dof.begin_active(), @@ -1394,7 +1391,7 @@ namespace MatrixCreator typename DoFHandler::active_cell_iterator const &cell, MatrixCreator::internal::AssemblerBoundary::Scratch const &scratch_data, MatrixCreator::internal::AssemblerBoundary:: - CopyData, number> ©_data) { + CopyData ©_data) { internal::create_boundary_mass_matrix_1(cell, scratch_data, copy_data, @@ -1407,7 +1404,7 @@ namespace MatrixCreator }, [&boundary_functions, &dof_to_boundary_mapping, &matrix, &rhs_vector]( MatrixCreator::internal::AssemblerBoundary:: - CopyData, number> const ©_data) { + CopyData const ©_data) { internal::copy_boundary_mass_matrix_1(copy_data, boundary_functions, dof_to_boundary_mapping, @@ -1428,10 +1425,10 @@ namespace MatrixCreator typename DoFHandler::active_cell_iterator const &cell, MatrixCreator::internal::AssemblerBoundary::Scratch const &, MatrixCreator::internal::AssemblerBoundary :: - CopyData, number> ©_data, - hp::MappingCollection const & mapping, - hp::FECollection const & fe_collection, - hp::QCollection const & q, + CopyData & copy_data, + hp::MappingCollection const &mapping, + hp::FECollection const & fe_collection, + hp::QCollection const & q, const std::map *> & boundary_functions, Function const *const coefficient, @@ -1683,7 +1680,7 @@ namespace MatrixCreator void copy_hp_boundary_mass_matrix_1( MatrixCreator::internal::AssemblerBoundary :: - CopyData, number> const ©_data, + CopyData const ©_data, std::map *> const & boundary_functions, std::vector const &dof_to_boundary_mapping, @@ -1854,9 +1851,8 @@ namespace MatrixCreator AssertDimension(n_components, component_mapping.size()); MatrixCreator::internal::AssemblerBoundary::Scratch scratch; - MatrixCreator::internal::AssemblerBoundary:: - CopyData, number> - copy_data; + MatrixCreator::internal::AssemblerBoundary::CopyData + copy_data; WorkStream::run( dof.begin_active(), @@ -1870,7 +1866,7 @@ namespace MatrixCreator typename DoFHandler::active_cell_iterator const &cell, MatrixCreator::internal::AssemblerBoundary::Scratch const &scratch_data, MatrixCreator::internal::AssemblerBoundary :: - CopyData, number> ©_data) { + CopyData ©_data) { internal::create_hp_boundary_mass_matrix_1(cell, scratch_data, copy_data, @@ -1883,7 +1879,7 @@ namespace MatrixCreator }, [&boundary_functions, &dof_to_boundary_mapping, &matrix, &rhs_vector]( MatrixCreator::internal::AssemblerBoundary :: - CopyData, number> const ©_data) { + CopyData const ©_data) { internal::copy_hp_boundary_mass_matrix_1(copy_data, boundary_functions, dof_to_boundary_mapping, -- 2.39.5