Plot Nedelec edge elements (Makie)

How can I plot Nedelec finite element data in Julia, preferably with Makie? So far, I’ve been using the standard Lagrangian finite elements which can be plotted with nodal data points using Makie. Now, I’d like to plot the Nedelec finite elements, which are not point nodal but use the edge midpoints for data.

2 Likes

I’d be interested in a solution to this as well.

I’ve never tried with Makie specifically, but whenever I try plotting anything other than 1st order Lagrangian finite elements, I always resort to creating the explicit representation of the function (knowing the shape of basis functions). And then I plot that using a submesh (which is relatively easy for me since I’m lucky enough to almost always work with structured meshes).

1 Like

Went ahead and implemented an explicit nedelecmean which can be combined with 1st order interpolation to plot using Makie in an easy way.

Using the Grassmann.jl element API combined with the above Nedelec function in Adapode.jl the code ends up being fairly simple for unstructured meshes having Nedelec edge values u to plot.

E = interp(t,nedelecmean(t,t2e,signs,real.(u)))
mesh(t,color=value.(abs.(E)),shading=false)
arrows!(p,E,arrowsize=0.02,lengthscale=0.02,arrowcolor=:white,linecolor=:white)

4 Likes