From 1cbb4eb5b2fb505b2575e6c3f929ada25eb26bd7 Mon Sep 17 00:00:00 2001 From: Luca Heltai Date: Fri, 11 Mar 2016 12:29:44 +0100 Subject: [PATCH] Made fe_q a public static member of MappingManifold. --- include/deal.II/fe/mapping_manifold.h | 11 +++-------- source/fe/mapping_manifold.cc | 20 +++++++++++--------- tests/fe/mapping_q_manifold_01.cc | 2 +- 3 files changed, 15 insertions(+), 18 deletions(-) diff --git a/include/deal.II/fe/mapping_manifold.h b/include/deal.II/fe/mapping_manifold.h index 574a641aff..0a6e712f8c 100644 --- a/include/deal.II/fe/mapping_manifold.h +++ b/include/deal.II/fe/mapping_manifold.h @@ -304,11 +304,6 @@ public: */ mutable std::vector volume_elements; - /** - * A Q1 Finite element, to compute weights. - */ - const FE_Q fe_q; - /** * A pointer to the Manifold in use. * @@ -371,12 +366,12 @@ public: * @} */ -protected: - /** * An FE_Q object, used to compute weights for Manifold quadratures. */ - const FE_Q fe_q; + static const FE_Q fe_q; + +protected: /** * Transforms the point @p p on the real cell to the corresponding point on diff --git a/source/fe/mapping_manifold.cc b/source/fe/mapping_manifold.cc index 8c9e2a1db9..0357c2e8b4 100644 --- a/source/fe/mapping_manifold.cc +++ b/source/fe/mapping_manifold.cc @@ -41,9 +41,15 @@ DEAL_II_NAMESPACE_OPEN + +template +const FE_Q +MappingManifold::fe_q = FE_Q(1); + + + template -MappingManifold::InternalData::InternalData () : - fe_q(1) +MappingManifold::InternalData::InternalData () {} @@ -176,18 +182,14 @@ initialize_face (const UpdateFlags update_flags, template -MappingManifold::MappingManifold () : - fe_q(1) - // support_point_weights_on_quad (compute_support_point_weights_on_quad(this->polynomial_degree)), - // support_point_weights_on_hex (compute_support_point_weights_on_hex(this->polynomial_degree)), +MappingManifold::MappingManifold () { } template -MappingManifold::MappingManifold (const MappingManifold &mapping) : - fe_q(1) +MappingManifold::MappingManifold (const MappingManifold &mapping) {} @@ -452,7 +454,7 @@ namespace internal // Get the weights to compute the np point in real space for (unsigned int j=0; j::vertices_per_cell; ++j) - weights[j] = data.fe_q.shape_value(j, np); + weights[j] = MappingManifold::fe_q.shape_value(j, np); Point NP=data.manifold-> get_new_point(Quadrature(data.vertices, weights)); diff --git a/tests/fe/mapping_q_manifold_01.cc b/tests/fe/mapping_q_manifold_01.cc index 27667e6649..a3336d13fc 100644 --- a/tests/fe/mapping_q_manifold_01.cc +++ b/tests/fe/mapping_q_manifold_01.cc @@ -13,7 +13,7 @@ // // --------------------------------------------------------------------- -// Test high order MappingQ on Manifolds. +// Test high order MappingQ on a ChartManifold. #include "../tests.h" -- 2.39.5