ISLocalToGlobalMappingGetBlockMultiLeavesSF#
Get the star-forest to communicate multi-leaf block data
Synopsis#
#include "petscis.h"
PetscErrorCode ISLocalToGlobalMappingGetBlockMultiLeavesSF(ISLocalToGlobalMapping mapping, PetscSF *mlsf)
Collective the first time it is called
Input Parameter#
mapping - the mapping from local to global indexing
Output Parameter#
mlsf - the
PetscSF
Notes#
The returned star forest is suitable to exchange local information with other processes sharing the same global block index. For example, suppose a mapping with two processes has been created with
rank 0 global block indices: [0, 1, 2]
rank 1 global block indices: [2, 3, 4]
and we want to share the local information
rank 0 data: [-1, -2, -3]
rank 1 data: [1, 2, 3]
then, the broadcasting action of mlsf
will allow to collect
rank 0 mlleafdata: [-1, -2, -3, 3]
rank 1 mlleafdata: [-3, 3, 1, 2]
Use ISLocalToGlobalMappingGetBlockNodeInfo()
to index into the multi-leaf data.
See Also#
Low-level Vector Communication, ISLocalToGlobalMappingGetBlockNodeInfo()
, PetscSF
Level#
advanced
Location#
Index of all IS routines
Table of Contents for all manual pages
Index of all manual pages