All,
a post by Tao Zhen earlier this summer prompted me to look a bit deeper into
the interplay between the FiniteElement, Mapping, and FEValues classes. This
group of classes was written sometime in 1998, and I had long forgotten (or
never known) how they worked together, so I thought it might be a good idea to
educate myself again about this part of the library. I took (and am taking)
the opportunity to clean up many parts of this corner.
The purpose of the post is to point those of you who are actually writing
finite element descriptions to this new documentation module explaining how
these three groups of classes work together:
https://www.dealii.org/developer/doxygen/deal.II/group__FE__vs__Mapping__vs__FEValues.html
I hope this helps in documenting an area that we wrote at a time when we had
not understood yet how important documentation actually is.
Also for those of you writing finite element classes: Most of the changes I've
made this summer did not actually change public interfaces, though some did,
and I have at least two more areas that I'd like to change:
https://github.com/dealii/dealii/issues/1335
Make FiniteElement::update_once/each an internal decision, and only
export *what* flags the finite element needs, not when. This is similar
to what I did in
https://github.com/dealii/dealii/pull/1361 for the
Mapping classes
https://github.com/dealii/dealii/issues/1277
Reshuffle the arguments to FiniteElement::fill_fe_values() and
provide proper documentation.
Both of these are incompatible to previous versions of the library, but this
will only be visible to those who have their own element implementations that
do not (yet) live in the library itself. If you need help converting your code
to the new interface, please let me know and I will help!
If you're curious about all of the other things that have been cleaned up in
this general area, here is a list:
https://github.com/dealii/dealii/issues/1198
Best
Wolfgang
--
------------------------------------------------------------------------
Wolfgang Bangerth email:
bang...@math.tamu.edu
www:
http://www.math.tamu.edu/~bangerth/