From: Yujie <rec...@gm...> - 2007-08-28 20:51:46
|
Dear Roy: I am very sorry for misunderstanding what you said. However, it is likely difficult to call ParMETIS in libmesh? Whether will it affect the implementation of dynamic repartitioning in adaptive mesh refinement. I have found that a function (ParMETIS_V3_AdaptiveRepart) in ParMETIS is used to deal with the adaptively refined mesh. METIS uses the methods (coarsen, partition and refine) to partition the mesh, which most likely affects the element distribution. I don't confirm this. Could you give me some information about it? thanks a lot. Regards, Yujie On 8/28/07, Roy Stogner <roy...@ic...> wrote: > > On Tue, 28 Aug 2007, Yujie wrote: > > > Roy told me that METIS can work well in libmesh and ParMETIS can't work > > well. > > I didn't say that ParMETIS can't work well, just that I thought it > wasn't used by default. > > > I want to know whether the problem has been solved. If not, where is > > the key problem? > > In src/mesh/mesh_base.C, we build a MetisPartitioner object, and there > doesn't seem to be an easy way for the user to choose a > ParmetisPartitioner or something else without having to edit library > code. We ought to add an API to MeshBase to let users supply their own > instance of a Partitioner subclass. > > > In addition, I want to confirm that libmesh will call METIS for mesh > > partitioning after libmesh reads the mesh data. > > The partitioner is called in MeshBase::prepare_for_use(), which gets > called as soon as the mesh has been fully generated or loaded from a > file. > --- > Roy > |