NAME
Grid_putFluxDataMag
SYNOPSIS
call Grid_putFluxDataAnisoCond(integer(IN) :: blockID, integer(IN) :: axis, real(IN) :: fluxes(NFLUXES,dataSize(1),dataSize(2),dataSize(3)), integer(IN) :: dataSize(3), real(IN) :: areaLeft(:,:,:))
DESCRIPTION
Put the fluxes in a direction specified by axis for boundary cells for block blockID. This routine needs to be used with adaptive mesh since fluxes calculated by the two blocks that are at fine/coarse boundary have different accuracy. The fluxes calculated by individual blocks are reported to the Grid through this call. Once that is done, a call to Grid_conserveFluxes applies the flux conservation algorithm to make it consistent across the fine/coarse boundaries.
ARGUMENTS
blockID : The local blockid axis : integer value specifying on which cell faces to put fluxes. The options are IAXIS, JAXIS, or KAXIS defined in constants.h fluxes : real array with space for fluxes, through one axis, for all cells of a block and for all flux variables. fluxes(VAR, i, j, k) is VAR's flux through the left cell face for cell i, j, k. dataSize : integer array specifying the dimensions for the array, fluxes dataSize (1) holds the number of cells provided in the i direction dataSize (2) holds the number of cells provided in the j direction if 1 d problem, set datasize(2) = 1 dataSize (3) holds the number of cells provided in the k direction if 1 or 2 d problem, set datasize(3) = 1 fluxes should contain space for fluxes of all cells in the block, including guardcells, and the fluxes must be correct for the interior cells of the block, as this interface does not know which cell fluxes the Grid will need to store. areaLeft : areas of left and right faces, only used if special scaling is requested with the pressureSlot argument. The areaLeft argument in the corresponding Grid_getFluxData call should generally match the one in the Grid_putFluxData call.
NOTES
For the Unform Grid, no implementation is provided, since there is never a need for flux correction. Any code calling this subroutine needs to know the explicit interface, since this interface contains assumed-shape dummy arrays. Calling FORTRAN units should therefore contain a line like use Grid_interface, ONLY: Grid_putFluxDataAnisoCond
SEE ALSO
Grid_getFluxData Grid_conserveFluxes hy_sweep