From: Peter Munch Date: Thu, 19 Nov 2020 20:39:36 +0000 (+0100) Subject: Use hp::MappingCollection initialize_cell_range X-Git-Tag: v9.3.0-rc1~877^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F11207%2Fhead;p=dealii.git Use hp::MappingCollection initialize_cell_range --- diff --git a/include/deal.II/matrix_free/mapping_info.templates.h b/include/deal.II/matrix_free/mapping_info.templates.h index 4c12701240..02ef441e58 100644 --- a/include/deal.II/matrix_free/mapping_info.templates.h +++ b/include/deal.II/matrix_free/mapping_info.templates.h @@ -846,15 +846,12 @@ namespace internal const dealii::Triangulation & tria, const std::vector> &cells, const std::vector & active_fe_index, - const dealii::hp::MappingCollection & mapping_in, + const dealii::hp::MappingCollection & mapping, MappingInfo &mapping_info, std::pair>, CompressedCellData> &data) { - AssertDimension(mapping_in.size(), 1); - const auto &mapping = mapping_in[0]; - FE_Nothing dummy_fe; // when we make comparisons about the size of Jacobians we need to @@ -920,13 +917,15 @@ namespace internal const unsigned int hp_quad_index = mapping_info.cell_data[my_q].descriptor.size() == 1 ? 0 : fe_index; + const unsigned int hp_mapping_index = + mapping.size() == 1 ? 0 : fe_index; const unsigned int n_q_points = mapping_info.cell_data[my_q] .descriptor[hp_quad_index] .n_q_points; if (fe_values[my_q][fe_index].get() == nullptr) fe_values[my_q][fe_index] = std::make_shared>( - mapping, + mapping[hp_mapping_index], dummy_fe, mapping_info.cell_data[my_q] .descriptor[hp_quad_index] @@ -1076,8 +1075,9 @@ namespace internal cells[cell * VectorizedArrayType::size() + v] .second); const Point p = - mapping.transform_unit_to_real_cell(cell_it, - Point()); + mapping[hp_mapping_index] + .transform_unit_to_real_cell(cell_it, + Point()); for (unsigned int d = 0; d < dim; ++d) quad_point[d][v] = p[d]; }