tem_stencilElement_dump Subroutine

private subroutine tem_stencilElement_dump(me, nUnit, neighID, tIDonly)

Write element information to disk

Arguments

Type IntentOptional Attributes Name
type(tem_stencilElement_type), intent(in) :: me

stencil element to be dumped

integer, intent(in) :: nUnit

unit to dump to

integer(kind=long_k), intent(in), optional, allocatable :: neighID(:)

neighbor ID

logical, intent(in), optional :: tIDonly

only use tree IDs


Calls

proc~~tem_stencilelement_dump~~CallsGraph proc~tem_stencilelement_dump tem_stencilElement_dump proc~tem_printarray tem_printArray proc~tem_stencilelement_dump->proc~tem_printarray

Called by

proc~~tem_stencilelement_dump~~CalledByGraph proc~tem_stencilelement_dump tem_stencilElement_dump interface~tem_stencil_dump tem_stencil_dump interface~tem_stencil_dump->proc~tem_stencilelement_dump proc~tem_dimbydim_construction tem_dimByDim_construction proc~tem_dimbydim_construction->interface~tem_stencil_dump proc~tem_element_dump tem_element_dump proc~tem_element_dump->interface~tem_stencil_dump proc~tem_build_face_info tem_build_face_info proc~tem_build_face_info->proc~tem_dimbydim_construction proc~tem_elemlist_dump tem_elemList_dump proc~tem_elemlist_dump->proc~tem_element_dump proc~build_levelelements build_levelElements proc~build_levelelements->proc~tem_elemlist_dump proc~communicate_elements communicate_elements proc~communicate_elements->proc~tem_elemlist_dump proc~tem_init_elemlevels tem_init_elemLevels proc~tem_init_elemlevels->proc~tem_elemlist_dump

Source Code

  subroutine tem_stencilElement_dump( me, nUnit, neighID, tIDonly )
    ! -------------------------------------------------------------------- !
    !> stencil element to be dumped
    type( tem_stencilElement_type ), intent(in) :: me
    !> unit to dump to
    integer, intent(in) :: nUnit
    !> neighbor ID
    integer(kind=long_k), allocatable, intent(in), optional :: neighID(:)
    !> only use tree IDs
    logical, intent(in), optional :: tIDonly
    ! -------------------------------------------------------------------- !
    integer :: iVal
    logical :: tIDonly_loc
    integer(kind=long_k) :: treeIDs( me%QQN )
    ! -------------------------------------------------------------------- !

    if( present( tIDonly )) then
      tIDonly_loc = tIDonly
    else
      tIDonly_loc = .false.
    endif

    write(nUnit, "(' QQN: ', I2, ', headerPos: ', I0 )" ) me%QQN, me%headerPos

    if ( present(neighID) ) then

      if ( allocated(neighID) .and. allocated(me%tIDpos) ) then
        ! get neighIDs
        do iVal=1,size(me%tIDpos)
          if ( me%tIDpos(iVal) == 0 ) then
            treeIDs(iVal) = 0
          else
            treeIDs(iVal) = neighID( me%tIDpos(iVal) )
          end if
        end do
        call tem_printArray( treeIDs, 8, 'neighIDs', 120, nUnit)
      end if

    end if

  end subroutine tem_stencilElement_dump