I am trying to implement discontinuous Galerkin method for steady state Stokes equations using the following finite element space:

fes = L2(mesh,order=order_p,dim=3,dgjumps=True)

However I am running into issues where my matrix is singular. I have the code working correctly for this finite element space:

X = L2(mesh,order=order_p)

fes = FESpace([X,X,X], dgjumps=True)

When I check the number of degrees of freedom is 3 times as many, am I wrong to think they should be the same as the first finite element space? While I do have it working for this space, I would really like to have code using the first listed finite element space to more easily allow me to incorporate into other code.

I’ve attached both my working and non-working code.

Attachment: not_working_stokes.py

Attachment: working_stokes.py