Dear PETSc team:

I am working with a non-overlapping distributed plex (i.e., when I call 
DMPlexDistribute(), I input overlap = 0), so only vertices and edges appear as 
ghosts to the local ranks.
For preallocation of a parallel global stiffness matrix for FEA, I want to 
determine which locally owned vertices are ghosts to another rank.

From reading the paper on PetscSF 
(https://ieeexplore.ieee.org/document/9442258) I think I can answer my question 
by inspecting the PetscSF returned by DMPlexDistribute() with 
PetscSFGetGraph(). I am just confused by the root/leaf and ilocal/iremote 
terminology.

I read the manual page on PetscSFGetGraph() 
(https://petsc.org/release/docs/manualpages/PetscSF/PetscSFGetGraph.html) and 
that gave me the impression that I need to PetscSFBcast() the point IDs from 
foreign ranks to the local ones.

Is this correct?


[https://ieeexplore.ieee.org/assets/img/ieee_logo_smedia_200X200.png]<https://ieeexplore.ieee.org/document/9442258>
The PetscSF Scalable Communication Layer | IEEE Journals & Magazine | IEEE 
Xplore<https://ieeexplore.ieee.org/document/9442258>
PetscSF, the communication component of the Portable, Extensible Toolkit for 
Scientific Computation (PETSc), is designed to provide PETSc's communication 
infrastructure suitable for exascale computers that utilize GPUs and other 
accelerators. PetscSF provides a simple application programming interface (API) 
for managing common communication patterns in scientific computations by using 
a star ...
ieeexplore.ieee.org





Sincerely:

J.A. Ferrand

Embry-Riddle Aeronautical University - Daytona Beach FL

M.Sc. Aerospace Engineering | May 2022

B.Sc. Aerospace Engineering

B.Sc. Computational Mathematics



Sigma Gamma Tau

Tau Beta Pi



Phone: (386)-843-1829

Email(s): [email protected]

    [email protected]

Reply via email to