GridExtantExchange
his functions transfers data between local storage in different domains without a predefined mapping.
Synopsis
#include "grid.h"
int GridExtantExchange(MPI_Comm comm, int numExtants, int *extantProcs, int *firstExtant, PetscDataType dataType, AO *ordering)
int *firstVar, InsertMode addv, ScatterMode mode, void *locVars, void *ghostVars
Input Parameters
numExtants -The number of extants (interior variables) in this domain
extantProcs -The processor to which to send each extant
firstExtant -The first extant variable in each domain
ghostIndices -The global index for each ghost
dataType -The type of the variables
firstVar -The first variable on each processor
addv -The insert mode, INSERT_VALUES or ADD_VALUES
mode -The direction of the transfer, SCATTER_FORWARD or SCATTER_REVERSE
locVars -The local variable array
Output Paramters
firstExtant -The first extant variable in each domain after repartitioning
ghostVars -The ghost variables
Note
The data in ghostVars is assumed contiguous and implicitly indexed by the order of
ghostProcs and ghostIndices. The SCATTER_FORWARD mode will take the requested data
from locVars and copy it to ghostVars in the order specified by ghostIndices. The
SCATTER_REVERSE mode will take data from ghostVars and copy it to locVars.
Keywords
ghost, exchange, grid
See Also
GridGlobalToLocal, GridLocalToGlobal
Level:developer
Location:src/grid/impls/triangular/2d/grid2d.c
Index of all Grid routines
Table of Contents for all manual pages
Index of all manual pages