This is a read only copy of the old FEniCS QA forum. Please visit the new QA forum to ask questions

Mini element

+1 vote

Hi,

I would like to create the mini mixed finite element on a 3d domain. My understanding is that this incorporates a 3rd order bubble element. However, when I try and create the bubble element I get the error

FunctionSpace(mesh,'B', 3)
      Calling FFC just-in-time (JIT) compiler, this may take some time.
No point in creating empty RestrictedElement.
No point in creating empty RestrictedElement.

Am I doing something wrong here?

asked May 14, 2015 by mwathen FEniCS Novice (710 points)

1 Answer

+1 vote

Hi, Lagrange element with 3rd order polynomials on a triangle has 10 dofs. Nine are on edges and the remaining one inside the triangle is your bubble. That's why the following prints 1.

print FunctionSpace(UnitTriangleMesh(), 'Bubble', 3).dim()

On the other hand, all the 20 dofs of Lagrange element with 3rd order polynomials on a tetrahedron are on the faces. There is no internal dof, hence the error. To get the bubble space with dimension 1 consider

print FunctionSpace(UnitTetrahedronMesh(), 'Bubble', 4).dim()
answered May 14, 2015 by MiroK FEniCS Expert (80,920 points)
...