Thank you very much David.
I tried to what you suggested and it is working.
Please see the attached image.
The .geo file looks like :
Point(1) = {-2, 0, 4, element_dim} ;
Point(2) = {2, 0, 0, element_dim} ;
Point(3) = {2, 0, 9, element_dim};
Point(4) = {-2, 0, 9, element_dim};
Point(5) = {-2, 0, 5, element_dim};
Point(6) = {2, 0, 5, element_dim};
Line(11) = {1,2};
Line(12) = {2,6};
Line(13) = {6,5};
Line(14) = {5,1};
Line(15)={6,3};
Line(16)={3,4};
Line(17)={4,5};
Line Loop (21)={11,12,13,14};
Line Loop (22)={-13,15,16,17};
Plane Surface(31) = {21};
Plane Surface(32) = {22};
However, this process requires a lot of manual input and can be very tedious
for large domains divided into many pieces. I am wondering if there is any
tricks in Gmsh that can help me reduce the work, such as breaking a large line
loop into two overlapping smaller ones.
Thanks again.
--
Shi Jin, PhD
----- Original Message ----
> From: David Colignon <[EMAIL PROTECTED]>
> To: Shi Jin <[EMAIL PROTECTED]>
> Cc: [email protected]
> Sent: Thursday, June 5, 2008 1:09:48 AM
> Subject: Re: [Gmsh] Enforced vertexes on plane for parallel domain
> decomposition
>
>
>
> 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
<<attachment: twosurfaces.png>>
_______________________________________________ gmsh mailing list [email protected] http://www.geuz.org/mailman/listinfo/gmsh
