Skip to content

Rework nodal utilities and add support for nodal prisms

Dave Moxey requested to merge dmoxey/nektar:feature/nodal-cleanup into master

This MR refactors the nodal points utilities that are found in the NodalUtil.h and NodalUtil.cpp files, and introduces a new NodalUtil class which handles the generation of Vandermonde matrices, integration weights, interpolation matrices and derivative matrices for arbitrary sets of points on the triangle, tetrahedron and prism elements. The latter element is newly supported.

This branch:

  • Significantly reduces the amount of code from sporadic function calls to a more organised class structure, eliminating most duplicate code
  • Fixes a bug in the generation of nodal tetrahedral weights
  • Enables the use of nodal prism elements
  • Adds a lot of doxygen documentation to describe the new structure
  • Replaces the NodalUtil demos with a single NodalDemo, which is now tested in the regression tests

This should be seen as a stepping-stone branch, depending on the outcome of the working being done in the feature/basis-refactor branch, but will hopefully make any further efforts easier.

Merge request reports