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

Mesh Coarsening?

+3 votes

Hi all,

It is already possible to do mesh refinement, either manual or automatic.

For time-dependant problems we also need to coarsen the mesh in areas which are no longer interesting. Is this possible within FEniCS?

For example to mark some cells to refine and some others to coarse and the meshing algorithm splits and combines the cells accordingly.

asked Jan 12, 2015 by kevind FEniCS Novice (190 points)

1 Answer

+3 votes
 
Best answer

Coarsening is a much harder problem than refining. There have been projects within FEniCS which use an "edge-collapse" algorithm to coarsen, see for example:

dolfin/refinement/LocalMeshCoarsening.cpp

but it is probably not very robust.

This is an area of ongoing interest, so keep watching - something new will probably appear this year.

answered Jan 12, 2015 by chris_richardson FEniCS Expert (31,740 points)
selected Jan 12, 2015 by kevind

Thanks for the quick answer.

We will have a look into your suggestion and see if it works properly.

Some work was done in the area of edge collapse by KTH Stockholm researchers on their Unicorn project which was a fork from dolfin some years ago, but it hasn't been updated in a few years.

What's the current status for mesh coarsening?

There is still a long-term plan to include mesh coarsening, but there needs to be some changes to the way the mesh is stored and created first. This is a hard problem, especially in parallel. I don't expect to see mesh coarsening working in the next year, for example.

...