[MOAB-dev] Boundary nodes and faces
Vijay S. Mahadevan
vijay.m at gmail.com
Thu Aug 15 09:35:29 CDT 2013
> Don't forget to check the return value for errors :).
I always do.
> You can get the adj element using get_adjacencies.
I was expecting a reverse adjacency routine. But considering the API,
using the same routine to do the reverse lookup might make sense too.
The snippet works as it should and I can get access to all my boundary
faces, vertices and elements. If you want me to create a public API
routine to get to this data from Interface, let me know how the
signature of the function should look. It would be a useful thing for
almost all FEM codes.
Vijay
On Thu, Aug 15, 2013 at 8:57 AM, Tim Tautges <tautges at mcs.anl.gov> wrote:
> Don't forget to check the return value for errors :).
>
> You can get the adj element using get_adjacencies.
>
> - tim
>
>
> On 08/15/2013 02:26 AM, Vijay S. Mahadevan wrote:
>>
>> This was actually simpler than I thought. Couple of lines solved the
>> issue:
>>
>> skinner.find_skin(fileset, elocal, false, bndyfaces, bndyelems);
>> pcomm->filter_pstatus(bndyfaces,PSTATUS_NOT_OWNED,PSTATUS_NOT);
>> mbiface->get_connectivity(bndyfaces, bndyvtx, false);
>>
>> I thought that the bndyelems range would contain all the element handles
>> that contain the face after the find_skin call.
>> But this is not the case. My next related question (but not about the
>> skinner though) is whether I can do the reverse
>> lookup of the element to which a face belongs to ?
>>
>> Vijay
>>
>>
>> On Wed, Aug 14, 2013 at 10:01 PM, Vijay S. Mahadevan <vijay.m at gmail.com
>> <mailto:vijay.m at gmail.com>> wrote:
>>
>> Tim, Iulian,
>>
>> Thanks for the pointers. I think going from the highest-dimension down
>> and removing shared entities from the list
>> makes sense. I have a partial implementation that already does this
>> and will check whether this algorithm yields
>> what I need.
>>
>> I was originally thinking that Skinner:: find_geometric_skin would
>> give me the boundary vertices but doing it by the
>> process of elimination might be the right way since there is no
>> reliance on GEOM_DIMENSION tag being explicitly defined.
>>
>> Shall update soon.
>> Vijay
>>
>>
>> On Wed, Aug 14, 2013 at 9:50 PM, Tim Tautges <tautges at mcs.anl.gov
>> <mailto:tautges at mcs.anl.gov>> wrote:
>>
>> Note, I've added this to the MOAB faq,
>> http://trac.mcs.anl.gov/__projects/ITAPS/wiki/__ParallelGeomSkin
>> <http://trac.mcs.anl.gov/projects/ITAPS/wiki/ParallelGeomSkin>.
>>
>>
>> - tim
>>
>>
>> On 08/14/2013 09:31 PM, Tim Tautges wrote:
>>
>> This is tricky. As you say, if you get the local skin,
>> that'll include interior entities shared
>> with/ghosted from other
>> procs. If you get the skin and remove the shared entities,
>> that'll remove the vertices that are on the
>> geometric skin
>> but also shared with other procs. The right way to do this
>> is:
>>
>> - get the highest-dimensional entities on the skin (1d if in
>> 2d, 2d if in 3d)
>> - remove any shared entities from that range (because if it's
>> shared, then by definition there will be d+1 -
>> dimensional
>> entities on the other proc)
>> - if you're in 3d and you also want skin edges, get the edges
>> adj to the entities in the range (remember the
>> UNION arg
>> on get_adjacencies), put in tmp range, then do the same for
>> vertices, also put in tmp range
>> - merge the tmp range with the original range
>>
>> Like I said, tricky, but welcome to parallel mesh.
>>
>>
>> --
>>
>> ==============================__==============================__====
>>
>> "You will keep in perfect peace him whose mind is
>> steadfast, because he trusts in you." Isaiah 26:3
>>
>> Tim Tautges Argonne National Laboratory
>> (tautges at mcs.anl.gov <mailto:tautges at mcs.anl.gov>)
>> (telecommuting from UW-Madison)
>> phone (gvoice): (608) 354-1459 <tel:%28608%29%20354-1459>
>> 1500 Engineering Dr.
>> fax: (608) 263-4499 <tel:%28608%29%20263-4499>
>> Madison, WI 53706
>>
>>
>>
>
> --
> ================================================================
> "You will keep in perfect peace him whose mind is
> steadfast, because he trusts in you." Isaiah 26:3
>
> Tim Tautges Argonne National Laboratory
> (tautges at mcs.anl.gov) (telecommuting from UW-Madison)
> phone (gvoice): (608) 354-1459 1500 Engineering Dr.
> fax: (608) 263-4499 Madison, WI 53706
>
More information about the moab-dev
mailing list