[MOAB-dev] get_adjacencies after exchange_ghost_cells
Ryan O'Kuinghttons
ryan.okuinghttons at noaa.gov
Mon Nov 19 16:21:31 CST 2018
Hi Iulian,
After some more debugging, the issue seems to be an old one.. the
elem_coords tag is not coming across on the ghost elements. I am using
separate exchange_tags calls as you instructed:
Range nodes;
merr=mbmesh->mesh->get_entities_by_dimension(0, 0, nodes);
merr = pcomm->exchange_tags(node_tags, node_tags, nodes);
Range elems;
merr=mbmesh->mesh->get_entities_by_dimension(0, mbmesh->pdim, elems);
merr = pcomm->exchange_tags(elem_tags, elem_tags, elems);
Also, I resolved the issue with double call to resolve_shared_ents..
This version:
pcomm->resolve_shared_ents(0, mbmp->pdim, mbmp->pdim-1);
is what was being used in MBMesh_addelements, and it doesn't seem to do
the job. When I replaced it with this version it worked:
mbmp->mesh->get_entities_by_dimension(0, mbmp->pdim, elems);
pcomm->resolve_shared_ents(0, elems, mbmp->pdim, mbmp->pdim-1);
I pushed this change to the moab4 branch along with some other debugging
code.
Ryan
On 11/19/18 12:53, Ryan O'Kuinghttons wrote:
> Hi Iulian, I'm seeing an issue with calling get_adjacencies after the
> exchange_ghost_cells/tag_exchange call. For some reason, the Range of
> adjacencies contains elements without tags. Is there something special
> that needs to be done in this case?
>
> Also, I am still calling resolve_shared_ents twice, once in
> MBMesh_addelements and then again in the ghost exchange routine,
> because without that second call the adjacencies don't seem to include
> ghosted elements at all..
>
> The reproducer is updated on the moab4 branch if you want to try it
> again:
>
> esmf/src/Infrastructure/Mesh/tests/ESMC_MeshMOABGhostUTest.C
>
More information about the moab-dev
mailing list