From: kronbichler Date: Fri, 29 Nov 2013 16:01:49 +0000 (+0000) Subject: Disable even-odd decomposition for element degree 1 because it is slower than the... X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0e4a6212e94d871732b790dae2cc88f243394dd;p=dealii-svn.git Disable even-odd decomposition for element degree 1 because it is slower than the old implemnetation git-svn-id: https://svn.dealii.org/trunk@31832 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/include/deal.II/matrix_free/fe_evaluation.h b/deal.II/include/deal.II/matrix_free/fe_evaluation.h index 7a18e32fd2..6e75bc5331 100644 --- a/deal.II/include/deal.II/matrix_free/fe_evaluation.h +++ b/deal.II/include/deal.II/matrix_free/fe_evaluation.h @@ -5442,9 +5442,17 @@ FEEvaluation ::apply_values (const VectorizedArray in [], VectorizedArray out []) { - internal::apply_tensor_product_evenodd 1 || n_q_points_1d > 3) + internal::apply_tensor_product_evenodd, direction, dof_to_quad, add, 0> (shape_val_evenodd, in, out); + else + internal::apply_tensor_product_values, direction, dof_to_quad, add> + (this->data.shape_values.begin(), in, out); } @@ -5458,9 +5466,14 @@ FEEvaluation ::apply_gradients (const VectorizedArray in [], VectorizedArray out []) { - internal::apply_tensor_product_evenodd 1 || n_q_points_1d > 3) + internal::apply_tensor_product_evenodd, direction, dof_to_quad, add, 1> (shape_gra_evenodd, in, out); + else + internal::apply_tensor_product_gradients, direction, dof_to_quad, add> + (this->data.shape_gradients.begin(), in, out); } @@ -5477,9 +5490,14 @@ FEEvaluation ::apply_hessians (const VectorizedArray in [], VectorizedArray out []) { - internal::apply_tensor_product_evenodd 1 || n_q_points_1d > 3) + internal::apply_tensor_product_evenodd, direction, dof_to_quad, add, 2> (shape_hes_evenodd, in, out); + else + internal::apply_tensor_product_hessians, direction, dof_to_quad, add> + (this->data.shape_hessians.begin(), in, out); }