petsc-3.9.4 2018-09-11
DMDAGetProcessorSubset
Returns a communicator consisting only of the processors in a DMDA that own a particular global x, y, or z grid point (corresponding to a logical plane in a 3D grid or a line in a 2D grid).
Synopsis
#include "petscdmda.h"
PetscErrorCode DMDAGetProcessorSubset(DM da,DMDADirection dir,PetscInt gp,MPI_Comm *comm)
Collective on DMDA
Input Parameters
| da | - the distributed array
|
| dir | - Cartesian direction, either DMDA_X, DMDA_Y, or DMDA_Z
|
| gp | - global grid point number in this direction
|
Output Parameters
comm -new communicator
Notes
All processors that share the DMDA must call this with the same gp value
After use, comm should be freed with MPI_Comm_free()
This routine is particularly useful to compute boundary conditions
or other application-specific calculations that require manipulating
sets of data throughout a logical plane of grid points.
Not supported from Fortran
Keywords
distributed array, get, processor subset
Level
advanced
Location
src/dm/impls/da/dasub.c
Index of all DMDA routines
Table of Contents for all manual pages
Index of all manual pages