Hello,
I am currently doing unfitted methods. In order to guarantee stability for higher order finite elements, the following normal gradient stabilization is proposed
s(w, v) = c h (nh · ∇w, nh · ∇v)Th ,
to be added to the standard weak form, where \mathcal{T}_h and where the normal is the one to the surface of the level set. is the set of all cells cut by the geometry. I am currently not able to implement this, in the sense that it is not clear to me how to pass a custom normal to a weak form in FEniCSx. Of course, simply doing something like
dx_uncut = ufl.dx(subdomain_data=celltags, domain=mesh)
higher_order_stab = beta * h * inner(dot(n, grad(u)), dot(n, grad(v))) * dx_uncut(cut_cell_tag)
gives an error.