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

Difference between Function on RT and VectorFunction on CR?

+1 vote

Can someone explain to me the the difference between the function spaces

V = VectorFunctionSpace(mesh, 'CR', 1)

and

V = FunctionSpace(mesh, 'RT', 1)

(with mesh a 3-D mesh)?

Looking at the fenics book, pg 119, it looks as if a RT finite element is defined by four vectors (one on each face). To me this seems to be equivalent to defining three scalar values on each face, i.e. using sets of 3 CR elements.

On the other hand, the dimension for RT in 3-D is listed as 4 (just like CR) rather than 3x4=12. But if I'm just setting one scalar value per face, how is that different from using CR? Does the interpretation of the scalar as a normal component of some vector really make a difference?

(I don't have a particular problem in mind, this is just a question of general understanding).

asked Mar 6, 2014 by Nikolaus Rath FEniCS User (2,100 points)
edited Mar 7, 2014 by Nikolaus Rath

First: Your question is not very FEniCS-specific.

Second: For what kind of problem do you consider these elements? You realize that the (Crouzeix-Raviart)^d space has d times the number of degrees of freedom as the Raviart-Thomas space (here, d=3)?

I don't have a specific problem. Just a question of general understanding. I'll try clarify the question.

2 Answers

+4 votes
 
Best answer

RT has one dof per face and it is the face-normal vector.
A VectorFunction of CR will have 3 dofs per face
and they are in x,y, and z direction.
RT is suitable for H(div) problems, because
the dofs are normal vectors. CR for H^1 problems, but
it is non-conforming.

CR will not give you a good approximation of H(div) problems
and RT will not give a good approximation of H^1 problems, cf.
eg. http://dr.ntu.edu.sg/bitstream/handle/10220/4594/Mardal-Tai-Winther-RFE-02.pdf

answered Mar 9, 2014 by Kent-Andre Mardal FEniCS Expert (14,380 points)
selected Mar 10, 2014 by Nikolaus Rath
+2 votes

Does the interpretation of the scalar as a normal component of some vector really make a difference?

Yes, it makes a difference. Definition of DOF functionals is inseparable part of a finite element definition (in Ciarlet's sense). Respective DOF functionals of those two spaces are distinct, so the spaces are different.

answered Mar 7, 2014 by Jan Blechta FEniCS Expert (51,420 points)
...