unique global node identifiers?

Extension of Elmer in computational glaciology
Post Reply
rgladstone
Posts: 64
Joined: 15 Apr 2013, 16:23
Antispam: Yes

unique global node identifiers?

Post by rgladstone »

Hi all, I am reading Elmer mesh information at runtime in preparation for regridding operations (this is part of a coupled ice-ocean model). I need to have unique global ids for nodes, so that the same node on two neighbouring partition boundaries can be identified. Currently Elmer runtime node information appears to use local (to the current partition) identifiers, though I see that the mesh files (created with ElmerGrid) contain unique global node identifiers. Is this global node id information accessible somehow at runtime? If not, is there a way to reconstruct it at run time? I guess looping over all nodes on a partition and looking for nodes on other partitions with matching coords might do it, but this seems a bit awkward and inefficient, and would probably have to be done on one process with a lot of gathering, so I hope there is a better way.

Thanks!
Rupert
fgillet
Posts: 46
Joined: 30 Sep 2010, 16:58

Re: unique global node identifiers?

Post by fgillet »

Hi,

look at the ParallelInfo_t type; the array GlobalDOFs (e.g. Mesh % ParallelInfo % GlobalDOFs) will give you the global node numbering.
The other structures will give you informations about neighbours etc...
Not sure if it is documented somewhere; better to directly look in source codes to see how it works.

from TYPES.F90
TYPE ParallelInfo_t
INTEGER :: NumberOfIfDOFs
LOGICAL, POINTER :: INTERFACE(:)
INTEGER, POINTER :: GlobalDOFs(:)
TYPE(NeighbourList_t),POINTER :: NeighbourList(:)

LOGICAL, POINTER :: FaceInterface(:)
TYPE(NeighbourList_t),POINTER :: FaceNeighbourList(:)

LOGICAL, POINTER :: EdgeInterface(:)
TYPE(NeighbourList_t),POINTER :: EdgeNeighbourList(:)
END TYPE ParallelInfo_t

cheers

fab
rgladstone
Posts: 64
Joined: 15 Apr 2013, 16:23
Antispam: Yes

Re: unique global node identifiers?

Post by rgladstone »

That looks useful, thanks Fab. I´ll have a closer look at that code.

Rupert
Post Reply