From: bangerth Date: Mon, 7 Apr 2008 16:18:20 +0000 (+0000) Subject: Pull some computations out of a loop. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=119a5dd826cf464b253d621e435f04c18669ba38;p=dealii-svn.git Pull some computations out of a loop. git-svn-id: https://svn.dealii.org/trunk@15987 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/deal.II/source/fe/fe_q.cc b/deal.II/deal.II/source/fe/fe_q.cc index 52ad254040..9290fc67ce 100644 --- a/deal.II/deal.II/source/fe/fe_q.cc +++ b/deal.II/deal.II/source/fe/fe_q.cc @@ -2,7 +2,7 @@ // $Id$ // Version: $Name$ // -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II authors +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by the deal.II authors // // This file is subject to QPL and may not be distributed // without copyright and license information. Please refer @@ -414,13 +414,14 @@ get_face_interpolation_matrix (const FiniteElement &x_source_fe, // compute the interpolation // matrix by simply taking the // value at the support points. +//TODO: Verify that all faces are the same with respect to +// these support points. Furthermore, check if something has to +// be done for the face orientation flag in 3D. + const Quadrature face_quadrature + = QProjector::project_to_face (quad_face_support, 0); for (unsigned int i=0; i p - = QProjector::project_to_face (quad_face_support, 0).point (i); + const Point &p = face_quadrature.point (i); for (unsigned int j=0; jdofs_per_face; ++j) { @@ -505,7 +506,8 @@ get_subface_interpolation_matrix (const FiniteElement &x_source_fe, // generate a point on this // cell and evaluate the // shape functions there - Quadrature quad_face_support (source_fe.get_unit_face_support_points ()); + const Quadrature + quad_face_support (source_fe.get_unit_face_support_points ()); // Rule of thumb for FP accuracy, // that can be expected for a @@ -517,12 +519,14 @@ get_subface_interpolation_matrix (const FiniteElement &x_source_fe, // compute the interpolation // matrix by simply taking the // value at the support points. +//TODO: Verify that all faces are the same with respect to +// these support points. Furthermore, check if something has to +// be done for the face orientation flag in 3D. + const Quadrature subface_quadrature + = QProjector::project_to_subface (quad_face_support, 0, subface); for (unsigned int i=0; i p = QProjector::project_to_subface (quad_face_support, 0, subface).point (i); + const Point &p = subface_quadrature.point (i); for (unsigned int j=0; jdofs_per_face; ++j) {