FLASH-X
Doxygen Generated Documentation From Interface Source Code
Functions/Subroutines
Grid_getBlkNeighBlkIDFromPos.F90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine Grid_getBlkNeighBlkIDFromPos (blockDesc, pos, neghDir, ansBlockID, ansProcID)
 

Function/Subroutine Documentation

◆ Grid_getBlkNeighBlkIDFromPos()

subroutine Grid_getBlkNeighBlkIDFromPos ( type(Grid_tile_t)  blockDesc,
real, dimension(MDIM)  pos,
integer  neghDir,
integer  ansBlockID,
integer  ansProcID 
)

Given the physical coordinates of a point outside the current block (described by blockDesc) but in its neighborhood, and the direction in which the neighboring block lies, this routine finds the processor number and blockID within that processor for the neighboring block that contains the point.

blockDesc : describes block in current processor

pos : coordinates of the point of interest

neghDir : the location of the neighbor with respect to the current block, in other words specification on which face/edge/point is common between the current block and neighbor of interest. For example negh(1:MDIM)=LEFT_EDGE indicates that the lowest left hand corner of the current block is the same as the highest right end corner of the neighbor. Similarly negh(IAXIS)=LEFT_EDGE, negh(JAXIS:KAXIS) = CENTER implies that the left face of current block is common with the right face of the neighbor. This array is in the form returned by Grid_outsideBoundBox.

ansBlockID : identity of the neighbor, the first number is the blocknumber within the processor ansProcID : identity of the neighbor, the second number is the processor number where the neighbor is located

NOTES

Currently at most implemented for PARAMESH Grid implementations.

The specific subroutine Grid_getBlkNeighBlkIDFromPos is also available under the generic name Grid_getBlkIDFromPos.

!DEV: There is no proper implementation, Paramesh4 implementation will abort if called.

SEE ALSO Grid_outsideBoundBox

Definition at line 58 of file Grid_getBlkNeighBlkIDFromPos.F90.