Skip to content

Fixes to several small oversights

Daniel Bauer requested to merge bauerd/fix-p2-2d-diag into master

This MR includes fixes for several small oversights:

  • Computation of P2 diagonal with varying coefficient in 2D. Edge DoF indices must be adjusted between FEniCS and HyTeG ordering. However, they used to be shuffled twice (in lines 600-602 and again in lines 609-611). Details are explained below.
  • Adding single elements to a PETSc sparse matrix proxy added an unitialized value if real_t and PETScReal were different types.
  • The P2ConstantOperator used to segfault when passed a blending form. Now, the form initializes the geometry map to the identity.
  • Vertex, edge and volume DoF functions now use Kahan summation in the sumLocal operation. This fixes a test failure (icx, single precision, #236) caused by inaccurate pressure projection.
  • Also includes some improvements to and a new test for the P2 diagonal implemented in DiagonalNonConstantOperatorTest.
Edited by Daniel Bauer

Merge request reports