tem_horizontalSpacer Subroutine

public subroutine tem_horizontalSpacer(fUnit, before, after, toFile, str)

write out a message with the defined string+real content

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: fUnit

output unit

integer, intent(in), optional :: before

optional white lines before print

integer, intent(in), optional :: after

optional white lines after print

logical, intent(in), optional :: toFile

output goes to debug file

character(len=*), intent(in), optional :: str

String to be printed at the beginning of the spacer


Called by

proc~~tem_horizontalspacer~~CalledByGraph proc~tem_horizontalspacer tem_horizontalSpacer proc~build_levelelements build_levelElements proc~build_levelelements->proc~tem_horizontalspacer proc~communicate_elements communicate_elements proc~communicate_elements->proc~tem_horizontalspacer proc~identify_additionalneigh identify_additionalNeigh proc~identify_additionalneigh->proc~tem_horizontalspacer proc~load_tem load_tem proc~load_tem->proc~tem_horizontalspacer proc~request_remotehalos request_remoteHalos proc~request_remotehalos->proc~tem_horizontalspacer proc~tem_calc_imbalance tem_calc_imbalance proc~tem_calc_imbalance->proc~tem_horizontalspacer proc~tem_convergence_load tem_convergence_load proc~tem_convergence_load->proc~tem_horizontalspacer proc~tem_create_subtree_of tem_create_subTree_of proc~tem_create_subtree_of->proc~tem_horizontalspacer proc~tem_create_subtree_of_st_funlist tem_create_subTree_of_st_funList proc~tem_create_subtree_of_st_funlist->proc~tem_horizontalspacer proc~tem_debug_horizontaldependencies tem_debug_HorizontalDependencies proc~tem_debug_horizontaldependencies->proc~tem_horizontalspacer proc~tem_destroy_subtree_of_st_funlist tem_destroy_subTree_of_st_funList proc~tem_destroy_subtree_of_st_funlist->proc~tem_horizontalspacer proc~tem_dumptreeidlists tem_dumpTreeIDlists proc~tem_dumptreeidlists->proc~tem_horizontalspacer proc~tem_find_allelements tem_find_allElements proc~tem_find_allelements->proc~tem_horizontalspacer proc~tem_init_convergence tem_init_convergence proc~tem_init_convergence->proc~tem_horizontalspacer proc~tem_init_elemlevels tem_init_elemLevels proc~tem_init_elemlevels->proc~tem_horizontalspacer proc~tem_init_tracker tem_init_tracker proc~tem_init_tracker->proc~tem_horizontalspacer proc~tem_init_tracker_subtree tem_init_tracker_subTree proc~tem_init_tracker_subtree->proc~tem_horizontalspacer proc~tem_load_bc_header tem_load_bc_header proc~tem_load_bc_header->proc~tem_horizontalspacer proc~tem_load_debug tem_load_debug proc~tem_load_debug->proc~tem_horizontalspacer proc~tem_load_depend_vector tem_load_depend_vector proc~tem_load_depend_vector->proc~tem_horizontalspacer proc~tem_load_general tem_load_general proc~tem_load_general->proc~tem_horizontalspacer proc~tem_load_ic tem_load_ic proc~tem_load_ic->proc~tem_horizontalspacer proc~tem_load_output tem_load_output proc~tem_load_output->proc~tem_horizontalspacer proc~tem_load_restart tem_load_restart proc~tem_load_restart->proc~tem_horizontalspacer proc~tem_load_tracking tem_load_tracking proc~tem_load_tracking->proc~tem_horizontalspacer proc~tem_print_execinfo tem_print_execInfo proc~tem_print_execinfo->proc~tem_horizontalspacer proc~tem_variable_load_single tem_variable_load_single proc~tem_variable_load_single->proc~tem_horizontalspacer proc~tem_variable_load_vector tem_variable_load_vector proc~tem_variable_load_vector->proc~tem_horizontalspacer

Source Code

  subroutine tem_horizontalSpacer( fUnit, before, after, toFile, str )
    ! ---------------------------------------------------------------------------
    !> output unit
    integer,intent(in)          :: fUnit
    !> optional white lines before print
    integer,intent(in),optional :: before
    !> optional white lines after print
    integer,intent(in),optional :: after
    !> output goes to debug file
    logical,intent(in),optional :: toFile
    !> String to be printed at the beginning of the spacer
    character(*),intent(in),optional :: str
    ! ---------------------------------------------------------------------------
    ! loop variable
    integer :: i
    ! local temporary variable for the output unit
    integer :: nUnit
    ! ---------------------------------------------------------------------------

    nUnit = fUnit

    if( present( toFile)) then
      if( toFile ) nUnit = 66
    endif

    if( present(before) ) then
      do i=1,before
        write(nUnit,*)
      enddo
    endif

    if( present(str) ) then
      write(nUnit, '(5a)') repeat('=', (80-len_trim(str))/2 -1), &
        &                  ' ',                                  &
        &                  trim(str),                            &
        &                  repeat(' ', 1+mod(len_trim(str), 2)), &
        &                  repeat('=',(80-len_trim(str))/2 -1)
    else
      write(nUnit, '(a)') repeat('-', 80)
    end if

    if( present(after ) ) then
      do i=1,after
        write(nUnit,*)
      enddo
    endif
  end subroutine tem_horizontalSpacer