Mfem: Rebalance with AMR

Created on 5 May 2019  路  2Comments  路  Source: mfem/mfem

Hi, I got some strange reblanced partitioning results in dynamic AMR. Here are some pictures.

It looks okay initially.
grid0

Then the grid is changed slightly on the fly.
grid0p1

But its rebalanced partitioning looks funny:
partition0p1
For instance
onePart

However, even with the strange partitioning, the code seems to be okay and produce solutions consistent with my serial AMR code.

My code looks like this:

     //---Update fespace and interpolation---
     AMRUpdate(vx, vx_old, fe_offset, phi, psi, w, j);

     pmesh->Rebalance();

     //---Update fespace and interpolation---
     AMRUpdate(vx, vx_old, fe_offset, phi, psi, w, j);
     //Update time dependent operator and update/assemble bilinear forms
     oper.UpdateProblem();

Let me know what I am missing.

Thanks,
Qi

amr usage

Most helpful comment

Hi @tangqi, I'm not sure what exactly you are referring to, but here are two comments:

  1. The funny "hook"-shaped protrusions are an artifact of the Hilbert space-filling curve partitioning algorithm and cannot be easily avoided.

  2. The partitions are not continuous. This happens when the initial (coarse) mesh is not ordered along a space-filling curve. To avoid disconnected partitions, the elements of the coarse mesh should be ordered as a sequence of face-neighbors (you also need a recent (master) version of MFEM). In your case the coarse mesh could also be just a single quad, which would also make the partitions continuous.

Hope that helps,
Jakub

All 2 comments

Hi @tangqi, I'm not sure what exactly you are referring to, but here are two comments:

  1. The funny "hook"-shaped protrusions are an artifact of the Hilbert space-filling curve partitioning algorithm and cannot be easily avoided.

  2. The partitions are not continuous. This happens when the initial (coarse) mesh is not ordered along a space-filling curve. To avoid disconnected partitions, the elements of the coarse mesh should be ordered as a sequence of face-neighbors (you also need a recent (master) version of MFEM). In your case the coarse mesh could also be just a single quad, which would also make the partitions continuous.

Hope that helps,
Jakub

Hi @jakubcerveny, thanks for your very helpful comments. Indeed, I was wrongly expecting a continuous partitioning, which was observed in my code on uniform meshes. Since this is expected, I am less worried. The parallel AMR code is very robust with those discontinuous partitions. Thanks again for your impressive work. --Qi

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ztdepztdep picture ztdepztdep  路  3Comments

kvoronin picture kvoronin  路  3Comments

termi-official picture termi-official  路  4Comments

samanseifi picture samanseifi  路  4Comments

salazardetroya picture salazardetroya  路  3Comments