From e4d220c27390b23f5f33876894b9604ca866e4b2 Mon Sep 17 00:00:00 2001 From: bangerth Date: Tue, 4 Feb 2014 21:45:30 +0000 Subject: [PATCH] Reduce template contortion level by one in hopes that this helps MS VC++. git-svn-id: https://svn.dealii.org/trunk@32407 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/include/deal.II/matrix_free/mapping_info.h | 10 +++++++--- .../deal.II/matrix_free/mapping_info.templates.h | 14 ++++++-------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/deal.II/include/deal.II/matrix_free/mapping_info.h b/deal.II/include/deal.II/matrix_free/mapping_info.h index 692cf4de57..ee1f8c1961 100644 --- a/deal.II/include/deal.II/matrix_free/mapping_info.h +++ b/deal.II/include/deal.II/matrix_free/mapping_info.h @@ -57,6 +57,11 @@ namespace internal */ static const unsigned int n_cell_types = 1U<::n_array_elements; + /** * Empty constructor. */ @@ -279,7 +284,6 @@ namespace internal /** * Contains all the stuff that depends on the quadrature formula - */ std::vector mapping_data_gen; @@ -320,8 +324,8 @@ namespace internal const std::pair *cells, const unsigned int cell, const unsigned int my_q, - CellType (&cell_t_prev)[VectorizedArray::n_array_elements], - CellType (&cell_t)[VectorizedArray::n_array_elements], + CellType (&cell_t_prev)[n_vector_elements], + CellType (&cell_t)[n_vector_elements], FEValues &fe_values, CellData &cell_data) const; }; diff --git a/deal.II/include/deal.II/matrix_free/mapping_info.templates.h b/deal.II/include/deal.II/matrix_free/mapping_info.templates.h index f19e7be6c5..5d093bc971 100644 --- a/deal.II/include/deal.II/matrix_free/mapping_info.templates.h +++ b/deal.II/include/deal.II/matrix_free/mapping_info.templates.h @@ -606,13 +606,11 @@ end_set: const std::pair *cells, const unsigned int cell, const unsigned int my_q, - CellType (&cell_t_prev)[VectorizedArray::n_array_elements], - CellType (&cell_t)[VectorizedArray::n_array_elements], + CellType (&cell_t_prev)[n_vector_elements], + CellType (&cell_t)[n_vector_elements], FEValues &fe_val, CellData &data) const { - const unsigned int vectorization_length = - VectorizedArray::n_array_elements; const unsigned int n_q_points = fe_val.n_quadrature_points; const UpdateFlags update_flags = fe_val.get_update_flags(); @@ -620,7 +618,7 @@ end_set: // not have that field here) const double zero_tolerance_double = data.jac_size * std::numeric_limits::epsilon() * 1024.; - for (unsigned int j=0; j::cell_iterator cell_it (&tria, cells[j].first, cells[j].second); @@ -653,7 +651,7 @@ end_set: if (j==0) { Assert (cell>0, ExcInternalError()); - cell_t[j] = cell_t_prev[vectorization_length-1]; + cell_t[j] = cell_t_prev[n_vector_elements-1]; } else cell_t[j] = cell_t[j-1]; @@ -791,11 +789,11 @@ end_set: data.general_jac_grad[q][d][e][f][j] = jacobian_grad[d][e][f]; } } - } // end loop over all entries in vectorization (vectorization_length + } // end loop over all entries in vectorization (n_vector_elements // cells) // set information for next cell - for (unsigned int j=0; j