Description
This routine copies an intermediate representation of virtual unknowns for a certain subface into the solut array of a certain block. The intermediate representation is a one dimensional array which is equal to the double precision data in the multi-block messages from node to host, see multi-block messages. See also Fig. 2.
Heading
subroutine isddput(iblock, iface, isubface, itrans, ilev, ni, nj, ndegfd, ntimlv, nvirtual, nblocks, nfaces, maxnsubfaces, solut, nsubfaces, subfaces, smsg)
Parameters
- integer
- iblock, iface, isubface, itrans, ilev, ni, nj, ndegfd, nblocks, nfaces, maxnsubfaces
- double precision
- solut(0:ni+2, 0:nj+2, 1:ndegfd, *)
- integer
- nsubfaces(1:nblocks, 1:nfaces)
- integer
- subfaces(1:nblocks, 1:nfaces, 1:maxnsubfaces, *)
- double precision
- smsg(*)
- -
- iblock
- number of the target block
- iface
- number of the target face
- isubface
- number of the target subface
- itrans
- quantity that is stored in smsg
- ilev
- time level of the multi-block transport
- ni
- dimension of block iblock in the i-direction
- nj
- dimension of block iblock in the j-direction
- ndegfd
- number of degrees of freedom
- ntimlv
- number of time levels in solut
- nvirtual
- number of virtual rows in solut
- nblocks
- number of blocks
- nfaces
- number of faces of a block
- maxnsubfaces
- dimensioning parameter of the subfaces array
- solut
- local solut array with virtual points
- nsubfaces
- reserved
- subfaces
- reserved
- smsg
- intermediate representation of virtual unknowns
Input
Array smsg contains the intermediate representation.
Output
The appropriate positions in the subdomain solut array have been filled with values from smsg.
See also
isddget, isddvput, isddvget