Shi Jin wrote: > Hi there, > > I have been developing a parallel code to simulate particles flowing in > fluids. We are using the mesh generated by gmsh for unstructured grids > (Tetrahedra in 3D) and are quite impressed with it. Thank you. > > Our code runs in MPI and the mesh is first read in by the master process and > distributed into pieces using graph partitioners such as ParMetis or > Chaco. However, although the partition may be optimal to reduce parallel > communication, it is not very good for tracking particles moving across > domain interfaces. Therefore, we want to enforce a simple division between > processes, specifically using a straight line in 2D or a plane surface in 3D. > This way, it is trivial to figure out which processes the particle belongs to. > For an example in 2D, please see the attached image, where a domain is > divided into two parts by a straight line. > > Then I have a problem generating the correct mesh for this purpose. The > correct mesh should be one that has no element belonging to more than one > process at the same time. Let's talk about the 2D example shown in the > attachment. I would like to enforce the vertexes to be on the dividing line > in the middle of the domain while the default behavior does not guarantee > that. So I am wondering if there is any advanced technique I can use to > instruct gmsh to generate the correct mesh. >
Hi Shi, the easiest way is to define TWO surfaces, each one having the dividing line in common Cheers, Dave -- David Colignon, Ph.D. Collaborateur Logistique F.R.S.-FNRS (Equipements de Calcul Intensif) ACE - Applied & Computational Electromagnetics Institut Montefiore B28 Université de Liège 4000 Liège - BELGIQUE Tél: +32 (0)4 366 37 32 Fax: +32 (0)4 366 29 10 WWW: http://www.montefiore.ulg.ac.be/personnel.php?op=detail&id=898 Agenda: http://www.google.com/calendar/embed?src=david.colignon%40gmail.com > My naive guess would be to first enforce vertexes on the dividing line and > make sure they are the only ones used near the interface. Another possibility > is to first generate the incorrect mesh and then subdivide the bridging > elements into smaller ones that are on one side or the other. But I have no > idea how to do any of those. > > I would really appreciate your help. Thank you very much. > > Regards, > Shi > > -- > Shi Jin, PhD > > > > > > > ------------------------------------------------------------------------ > > > ------------------------------------------------------------------------ > > _______________________________________________ > gmsh mailing list > [email protected] > http://www.geuz.org/mailman/listinfo/gmsh _______________________________________________ gmsh mailing list [email protected] http://www.geuz.org/mailman/listinfo/gmsh
