Version 5 (modified by 12 years ago) ( diff ) | ,
---|
TransferPeriodicOverlap (INTEGER(MaxDims, 2) mSource, INTEGER(MaxDims, 2) mTarget, NodeInfo SourceInfo, NodeInfo TargetInfo, INTEGER(MaxDims) PeriodicOffsetFactor)
Click here to view the v166 source.
This function essentially works the same way as TransferOverlap(), except that TargetInfo
's global boundaries are adjusted by the PeriodicOffsetFactor
values prior to being passed into this function and that adjustment must be removed before transferring the auxiliary variables.
Looks for cells overlapping between SourceInfo
and TargetInfo
, and sets the user variables and grid cell counts in TargetInfo
equal to the corresponding values in SourceInfo
. If the two grids have no overlapping cells, then the subroutine returns without doing anything. The cell variables are Note that the two NodeInfo structures must have the same number of dimensions, although TransferOverlap()
doesn't check for it. TransferOverlap()
also triggers the transfer of auxiliary variables through a call to OverlapAuxCopy() after the offset factor is subtracted from the grid boundaries.
In single-processor mode or on a master processor, this function does the copying itself; on a worker processor in multi-processor mode, the copying of values is handled by the MPI_TransferOverlap() and MPI_TransferAuxOverlap() functions.
INCLUDES:
None.
USES:
- nodeinfodef.f90 supplies the NodeInfo data structure and some functions that operate on it.
- treeops.f90 supplies the Node and Forest structures and accompanying methods, as well as the ApplyOn_ functions.
- mpi_exec.f90 supplies functions used to set up distributed processing (most of which tend to have MPI_ somewhere in the name).
- serial_exec.f90 supplies functions used for single-processor processing.
- beario.f90 provides some file IO functions.
- scheme module supplies time-stepping scheme.
- contrib/astro/problem.f90 Contains problem-specific variables and functions.