petsc-3.13.6 2020-09-29
PetscSFGetGraph
Get the graph specifying a parallel star forest
Synopsis
#include "petscsf.h"
PetscErrorCode PetscSFGetGraph(PetscSF sf,PetscInt *nroots,PetscInt *nleaves,const PetscInt **ilocal,const PetscSFNode **iremote)
Not Collective
Input Arguments
sf -star forest
Output Arguments
| nroots | - number of root vertices on the current process (these are possible targets for other process to attach leaves)
|
| nleaves | - number of leaf vertices on the current process, each of these references a root on any process
|
| ilocal | - locations of leaves in leafdata buffers
|
| iremote | - remote locations of root vertices for each leaf on the current process
|
Notes
We are not currently requiring that the graph is set, thus returning nroots=-1 if it has not been set yet
When called from Fortran, the returned iremote array is a copy and must be deallocated after use. Consequently, if you
want to update the graph, you must call PetscSFSetGraph after modifying the iremote array.
See Also
PetscSFCreate(), PetscSFView(), PetscSFSetGraph()
Level
intermediate
Location
src/vec/is/sf/interface/sf.c
Examples
src/vec/is/sf/tutorials/ex1.c.html
src/vec/is/sf/tutorials/ex1f.F90.html
src/ts/tutorials/ex11.c.html
Implementations
PetscSFGetGraph_Allgatherv in src/vec/is/sf/impls/basic/allgatherv/sfallgatherv.c
PetscSFGetGraph_Alltoall in src/vec/is/sf/impls/basic/alltoall/sfalltoall.c
Index of all PetscSF routines
Table of Contents for all manual pages
Index of all manual pages