projecting boundary values for H(div) [and maybe H(curl)]

82 views
Skip to first unread message

Konrad

unread,
Mar 10, 2019, 6:09:36 AM3/10/19
to deal.II User Group
Hi all,

just a quick question. Is there a special reason why for example the function VectorTools::project_boundary_values_div_conforming is restricted to Raviart-Thomas elements? The principle should be the same for example for Brezzi-Douglas-Marini elements, right? Or am I missing something here?

Konrad

Wolfgang Bangerth

unread,
Mar 10, 2019, 6:20:28 PM3/10/19
to dea...@googlegroups.com
Correct. I suspect it's because nobody has tried it for the BDM element and
thought through whether the details are correct there as well.

What happens if you just try it? You might even be able to just take some of
the tests under the tests/ directory and copy/adjust them to use the BDM
element to see what happens. If it doesn't work, I suspect that the
adjustments will be minor. We'd of course take any kind of patch you come up with!

Best
W.


--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/

Message has been deleted

Daniel Arndt

unread,
Mar 18, 2019, 6:17:40 AM3/18/19
to deal.II User Group
 Konrad,
 
 I implemented a class derived from the Function<dim> class that evaluates a scalar or vector shape function at a given (set of) point(s) in a physical cell. If I check the output graphically I see that the vector shape    functions on the physical cell, for example for lowest order Raviart-Thomas elements has a magnitude that scales with the inverse edge length. But on any physical cell the magnitude should be one I believe.
 
  For the Raviart-Thomas the degrees of freedom for the lowest order element should be the face integrals. Hence, I would expect them to scale with the (inverse of the) size of the face.
 
 
I assume that has something to do with the mapping used by the FEValues class to map to the physical cell, right? Does the FEValues class initiated with any vector element use the Piola transform? If not how can I influence this?
 
 Have a look at https://www.dealii.org/current/doxygen/deal.II/group__mapping.html. The transformation type used in Mapping::transform() is normally set by the given FiniteElement class.
 
 Best,
 Daniel

Konrad

unread,
Mar 18, 2019, 12:11:54 PM3/18/19
to deal.II User Group
Thank you, Daniel. That confirms my intuition about that. The push forward from the ref cell to physical cells is, I found after thinking about it again, for RaviartThomas, BDM, Nedelec elements etc not the same as a Piola transform (which eliminates scaling but not rotation). My code works now without having to rescale.

Thanks again :-)

Konrad

Wolfgang Bangerth

unread,
Mar 18, 2019, 1:18:54 PM3/18/19
to dea...@googlegroups.com
On 3/16/19 7:12 AM, Konrad wrote:
>
> Tried it with BDM elements but it does not work. I strongly think about
> starting to contribute to deal.ii.

I'm glad to see that you've already found the issue, but I would like to add
that I think this here would be a really good idea! :-) We are always happy to
have new contributors!

jie liu

unread,
Nov 24, 2020, 9:37:57 AM11/24/20
to deal.II User Group
Dear all,

The file attached contains functions that might be a solution to the problem posted. They work well for me. I hope this would be helpful for people who have not solved the problem.

Best regards,
Jie

project_boundary_values_div_conforming for bdm elements.txt

Wolfgang Bangerth

unread,
Nov 24, 2020, 2:54:17 PM11/24/20
to dea...@googlegroups.com
On 11/24/20 7:37 AM, jie liu wrote:
>
> The file attached contains functions that might be a solution to the problem
> posted. They work well for me. I hope this would be helpful for people who
> have not solved the problem.

Jie -- would you be interested in making this code into a pull request? We
have instructions here:
https://github.com/dealii/dealii/wiki/Contributing
I think it would be fantastic if we could incorporate whatever code you have
written into the larger project!
Reply all
Reply to author
Forward
0 new messages