libMesh / libmesh

libMesh github repository
http://libmesh.github.io
GNU Lesser General Public License v2.1
651 stars 285 forks source link

Add Crouzeix-Raviart and/or Rannacher-Turek bases #3318

Open lindsayad opened 2 years ago

lindsayad commented 2 years ago

Crouzeix-Raviart sounds like an interesting candidate for solving incompressible Navier-Stokes problems as described briefly here and in more detail elsewhere

lindsayad commented 2 years ago

CR for Euler equations here. It seems that CR is for simplices but Rannacher-Turek is what is used for quads and hexes.

lindsayad commented 2 years ago

In my mind these styles of discretizations seem somewhat related to a staggered grid finite volume scheme

lindsayad commented 2 years ago

More theory around CR here talking about why CR is non-conforming, e.g. not H1. Thanks to @jwpeterson for these great references

lindsayad commented 2 years ago

This article by Rui and Bi discusses a finite volume element method. I've been seeing quite a bit of dual mesh language in which a second set of elements/cells is built around the barycentric centers of cell faces. So if these methods require a dual mesh in order to function, it makes just as much sense to go straight ahead with a staggered-grid pure finite volume method IMO

lindsayad commented 2 years ago

Staggered Semi-Implicit Hybrid Finite Volume/Finite Element Schemes for Turbulent and Non-Newtonian Flows by Busto looks like another interesting piece of literature although unrelated to CR or RT. It talks in-depth about construction of dual meshes for both simplex and quad meshes

GiudGiud commented 2 years ago

I need to read up on this. I'd be down for a summary table of all the discretizations we consider, what kind of interpolation they end up requiring (if any), the storage requirements, whether it s been deployed successfully elsewhere (less risk, less reward imo since less pushing the state of the art), etc all that kind of metadata which would help us make a decision

lindsayad commented 2 years ago

I forget whether these bases have the element constants in their test spaces...

jwpeterson commented 2 years ago

I forget whether these bases have the element constants in their test spaces...

By "element constants", do you mean the ability to exactly represent a piecewise-discontinuous-constant function on the elements? Since the CR functions are continuous at the mid-edge nodes, I don't think this is possible in the way that it would be for "true" discontinuous bases like MONOMIAL.

lindsayad commented 2 years ago

Yes after careful thought about what I meant ... that is what I meant haha

jwpeterson commented 2 years ago

OK, well it's an interesting question. I guess we don't need this property in order to prove convergence, etc. of the element so I'm curious why you are curious about it.

roystgnr commented 2 years ago

IIRC there are a lot of proofs (of convergence, global conservation, etc) that do rely on having u=c in the trial space, but all you need is the per-connected-domain-subset constant, not per-element constant.

lindsayad commented 2 years ago

My motivation for the question was this: my understanding based on Long Chen's writing here is that in order to have element-wise mass conservation when solving the incompressible Navier-Stokes equations, you need to have the piecewise constants in the test space for pressure. I do not know if my understanding is correct or not.

We are writing up a paper on the finite volume method and there has been a fair amount of discussion on the local conservation (or lack thereof) of Taylor-Hood elements, what I think is often colloquially referred to simply as CFEM. It is very common for people to say that CFEM is not locally conservative. However, this nice article by White is one in a line of articles that try to debunk that myth, contending that CFEM is indeed locally conservative ... it's just not on a per-element basis, but instead on a nodal-patch basis (e.g. following the local support of the test functions).

jwpeterson commented 2 years ago

you need to have the piecewise constants in the test space for pressure.

OK, yeah, from what I've seen the CR element always uses the non-conforming basis functions for the velocity components, and constant, monomial pressures. I assumed this was just because of LBB-stability requirements, but it would not surprise me if you also needed it to guarantee element-local conservation properties.

lindsayad commented 2 years ago

In the vein of conservation discussion is Hughes's work The Continuous Galerkin Method is Locally Conservative