mus_accessVar_setupIndices Subroutine

public subroutine mus_accessVar_setupIndices(fun, varSys, point, offset_bit, iLevel, tree, nPnts, idx)

This routine takes points coordinates, stores them in the method_data and return indices where points are located in the growing array of points or values ( sometimes we do not need to store the points ) It is need to setup points for every variable. Points will be provided by boundaries or sources depends on what uses the variable. This points do not change with time . This indices will be stored in corresponding boundary or source to evaluate a value on that point later using tem_varSys_proc_getValOfIndex.


class(tem_varSys_op_type), intent(in) :: fun

Description of the method to obtain the variables, for this routine we need the location where to store the points.

type(tem_varSys_type), intent(in) :: varSys

The variable system to obtain the variable from.

real(kind=rk), intent(in) :: point(:,:)

arrays of points for which the indices are returned

character, intent(in), optional :: offset_bit(:)

Offset bit encoded as character for every point. If not present default is to center i.e offset_bit = achar(1+4+16)

integer, intent(in) :: iLevel

the point data need to be loaded levelwise, we need the current level

type(treelmesh_type), intent(in) :: tree

global treelm mesh info

integer, intent(in) :: nPnts

number of points

integer, intent(out) :: idx(:)


proc~~mus_accessvar_setupindices~~CallsGraph proc~mus_accessvar_setupindices mus_accessVar_setupIndices proc~tem_posofid tem_PosOfId proc~mus_accessvar_setupindices->proc~tem_posofid proc~mus_getsrcelemposforintp mus_getSrcElemPosForIntp proc~mus_accessvar_setupindices->proc~mus_getsrcelemposforintp proc~tem_coordofreal tem_CoordOfReal proc~mus_accessvar_setupindices->proc~tem_coordofreal interface~append~6 append proc~mus_accessvar_setupindices->interface~append~6 interface~truncate~4 truncate proc~mus_accessvar_setupindices->interface~truncate~4 proc~tem_idofcoord tem_IdOfCoord proc~mus_accessvar_setupindices->proc~tem_idofcoord proc~tem_levelof tem_LevelOf proc~mus_accessvar_setupindices->proc~tem_levelof



integer, private :: iPoint
integer, private :: coord(4)
integer, private :: elemPos
integer, private :: loc_level
integer, private :: statePos
type(mus_varSys_data_type), private, pointer:: fPtr
type(mus_scheme_type), private, pointer:: scheme
real(kind=rk), private, allocatable:: weights(:)
integer, private, allocatable:: srcElemPos(:)
integer, private :: nSrcElems
integer(kind=long_k), private :: treeID