Hi Edith, On Monday, November 28, 2016 at 7:19:56 PM UTC+1, Edith Sotelo wrote: > > Hi all, > I have more questions regarding Fe_enriched & PUM > > 1) Are enriched functions shifted, so that the enriched part evaluates to > zero at the mesh nodes? >
no, nothing is shifted. Enrichment functions are taken as-is. If you refer to combination of enriched and non-enriched elements, see "Using enriched and non-enriched FEs together" in documentation https://www.dealii.org/developer/doxygen/deal.II/classFE__Enriched.html > > 2) About strong boundary conditions: > I am using the function interpolate_boundary_values,I think this function > is also interpolating values for the enriched dofs, but they need to be set > to zero instead to get the correct BC . > How can I manually choose the enriched dofs at the boundary and set them > to zero? > interpolate_boundary_values() will not work because shape functions corresponding to enriched DoFs generally won't satisfy delta Kronecker. Even if they are by chance, you may have a scalar FE with two shape functions (enriched / non-enriched) at the same support point. What you could do is L2 projection on the boundary to determine the values of DoFs. That amounts to inverting a mass matrix on the boundary. That should work. Otherwise, unless you need to enrich elements at the boundary, i would suggest instead mixing enriched and not-enriched elements. Depending on your enrichment, you may severely deteriorate the condition number of matrices. At least in some applications it is better to enriched only locally (in some part of the domain). Finally, in order to know whether a local DoF corresponds to enriched, you can query finite element for the base number of this DoF: FiniteElement< dim, spacedim >::system_to_base_table()[local_dof].first.first // base element number 0 is un-enriched. Regards, Denis. -- 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. For more options, visit https://groups.google.com/d/optout.