[MOAB-dev] Edges at the ends of a periodic mesh?

Timothy J. Tautges tautges at mcs.anl.gov
Wed May 23 21:01:49 CDT 2012


Be careful about the parallel case though, where on each proc sharing the edge the edge is represented.

Also, if you're just trying to create all the edges in one big batch, just put all the quads in a range, then call get_adjacencies, with the last argument Interface::UNION, and that should create/return all of them.

- tim

----- Original Message -----
From: "Iulian Grindeanu" <iulian at mcs.anl.gov>
To: "Robert Jacob" <jacob at mcs.anl.gov>
Cc: moab-dev at mcs.anl.gov
Sent: Wednesday, May 23, 2012 12:34:12 PM
Subject: Re: [MOAB-dev] Edges at the ends of a periodic mesh?




----- Original Message -----



Hi, 

If I have a 2D rectangular mesh which is periodic in one direction, lets 
say the j direction, then the leftmost and rightmost edge of the mesh 
are really the same edge. Do they both need to be declared in MOAB? Or 
does the periodic property mean you only need to describe one of the 
edges and the other end will know its adjacent to it? 

Thanks, 
Rob 
Hi, 
I assume that you use ScdInterface; 
If the box is periodic in j direction, the nodes in that direction will be "periodic". 
Nodes are not duplicated, the edges that you get on the leftmost and rightmost sides are really pointing to the same nodes, they will not be duplicated, either. 

How do you get edges after you create quads? 
You can use "get_adjacency" methods, with "create_if_missing" flag true. Only one edge would be created. 
The problem is that the order in which these are created is not very "structured" 
Or do you create them with new scd boxes, of dimension 1, in a loop over i (and then j?)? In that case, you have complete control over "order" they are created in. 
I hope this helps. 
Iulian 


Iulian 


More information about the moab-dev mailing list