FV Mesh Partition & Metis 4.0-5.0 Migration

Thank you Karypis Lab for Metis! It has been instrumental in my efforts to research problems associated with large scale, high resolution flood prediction.

I recently upgraded my finite volume flood simulation code to run on a mixed mesh of triangular and quadrilateral cells, and came back to metis to see if I could partition a mixed mesh after successfully partitioning a mesh of triangular cells with metis 4. I was intrigued to read that metis 5 was designed for this, so I got it running and ran some tests to get accustomed to the new executables.

Now I'm a bit flustered because mpmetis partitions (dual option) don't seem to have the same quality as the partdmesh partitions produced by metis 4, even on purely triangular meshes. I also converted my mesh file to a graph file to test out gpmetis, but the quality of partition didn't seem to improve.

My chief complaint is that metis 5 partitions the dual mesh with what I'd call "hanging elements", such as the red and blue triangles you see roughly in the center of the image file below:


(This figure color contours triangles according to the partition number.)

I would perfer that metis cut these hanging triangles along one of their sides, as this would lead to a cleaner division of neighboring partitions.

I tested another of the metis options to try and fix this problem, but none seemed to work.

I would be grateful for any ideas on how I can improve the mesh quality, not only on triangular meshes but mixed meshes as well.


Brett Sanders
UC Irvine

p.s. The input files that I used to generate this partition and graphic have been posted at the links below. The .ele and .node files follow Shewchuk's Triangle convention. There are two .mesh files to match metis 4 and metis 5 standards. Lastly, there is metis output saved as a Tecplot input file.


RE: Brett, If you are using the


If you are using the default command-line options on mpmetis, then it will not behave the same as the 4.x code. If you want it to behave the same, you need to play with the '-ncommon' option. For triangular meshes, 4.x mode will be -ncommon=2 and for tet-meshes it will be -ncommon=3.

Let me know if that makes a difference.