Masoud,
I am trying to use "DoFTools::map_dofs_to_support_points" function for a
two-field problem. The components of the first (vectorial) field are
approximated using "FE_Q" and the second (scalar) field with
"FE_DGPMonomial". The "component_mask" parameter is used to select only
the dofs associated with the first field.
However I get the following error message (debug mode):
/void dealii::DoFTools::internal::(anonymous
namespace)::map_dofs_to_support_points(const hp::MappingCollection<dim,
spacedim> &, const DoFHandler<dim, spacedim> &,
std::map<types::global_dof_index, Point<spacedim>> &, const
dealii::ComponentMask &) [dim = 2, spacedim = 2]/
/The violated condition was: /
/(fe_collection[fe_index].n_dofs_per_cell() == 0) ||
(fe_collection[fe_index].has_support_points())/
/Additional information: /
/You are trying to access the support points of a finite element that/
/either has no support points at all, or for which the corresponding/
/tables have not been implemented./
From inspecting the method responsible for throwing the error is
appears that all fields in the collection are checked via the Assert. Is
the method applicable to problems where some fields have support points
and others don't but are masked? The mask appears to only be appropriate
to mask fields with support points.
You are correct: The DoFTools::map_dofs_to_support_points first asks the
finite element object for its support points, and only then applies the
mask. It doesn't know how to break down the element to its base/
component elements if only some of the base elements have support
points, and the error message you see is the result.
I don't have an alternative suggestion either. You'd have to implement
this kind of functionality (i.e., looking through the base elements of a
FESystem) if you really need the map from DoF indices to support points.
Best
W.
--
------------------------------------------------------------------------
Wolfgang Bangerth email: bange...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/3a6d1dcd-c3c4-b47f-3918-01b824612030%40colostate.edu.