From: Martin Kronbichler Date: Mon, 10 Dec 2012 10:33:22 +0000 (+0000) Subject: Fix one border case in initialization on non-constant Jacobians. X-Git-Tag: v8.0.0~1714 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d1e963166f438826897de8f240ce0e26cf9f5f4e;p=dealii.git Fix one border case in initialization on non-constant Jacobians. git-svn-id: https://svn.dealii.org/trunk@27789 0785d39b-7218-0410-832d-ea1e28bc413d --- 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 7d315d7d76..2d9ab24941 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 @@ -734,21 +734,18 @@ end_set: break; } - // in case we have only one quadrature point, - // we can have non-constant Jacobians, but we - // cannot detect it by comparison from one - // quadrature point to the next: in that case, - // need to look at second derivatives and see - // whether there are some non-zero entries - // (this is necessary since we determine the - // constness of the Jacobian for the first - // quadrature formula and might not look at - // them any more for the second, third - // quadrature formula - if (cell_cartesian == false && n_q_points == 1) + // in case we have only one quadrature point, we can have + // non-constant Jacobians, but we cannot detect it by + // comparison from one quadrature point to the next: in that + // case, need to look at second derivatives and see whether + // there are some non-zero entries (this is necessary since + // we determine the constness of the Jacobian for the first + // quadrature formula and might not look at them any more + // for the second, third quadrature formula). in any case, + // the flag update_jacobian_grads will be set in that case + if (cell_cartesian == false && n_q_points == 1 && + update_flags & update_jacobian_grads) { - Assert (update_flags & update_jacobian_grads, - ExcInternalError()); const DerivativeForm<1,dim,dim> &jac = fe_val.jacobian(0); const DerivativeForm<2,dim,dim> &jacobian_grad = fe_val.jacobian_grad(0);