print_3d_tensor_dp Subroutine

private subroutine print_3d_tensor_dp(matrix, format_type)

Print a 3D tensor of values

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: matrix(:,:,:)
character(len=*), intent(in), optional :: format_type

Calls

proc~~print_3d_tensor_dp~~CallsGraph proc~print_3d_tensor_dp print_3d_tensor_dp interface~pic_optional pic_optional proc~print_3d_tensor_dp->interface~pic_optional interface~pic_print_array pic_print_array proc~print_3d_tensor_dp->interface~pic_print_array proc~set_brackets set_brackets proc~print_3d_tensor_dp->proc~set_brackets proc~optional_char optional_char interface~pic_optional->proc~optional_char proc~optional_dp optional_dp interface~pic_optional->proc~optional_dp proc~optional_int32 optional_int32 interface~pic_optional->proc~optional_int32 proc~optional_int64 optional_int64 interface~pic_optional->proc~optional_int64 proc~optional_logical optional_logical interface~pic_optional->proc~optional_logical proc~optional_sp optional_sp interface~pic_optional->proc~optional_sp interface~pic_print_array->proc~print_3d_tensor_dp proc~print_3d_tensor_int32 print_3d_tensor_int32 interface~pic_print_array->proc~print_3d_tensor_int32 proc~print_3d_tensor_int64 print_3d_tensor_int64 interface~pic_print_array->proc~print_3d_tensor_int64 proc~print_3d_tensor_sp print_3d_tensor_sp interface~pic_print_array->proc~print_3d_tensor_sp proc~print_matrix_dp print_matrix_dp interface~pic_print_array->proc~print_matrix_dp proc~print_matrix_int32 print_matrix_int32 interface~pic_print_array->proc~print_matrix_int32 proc~print_matrix_int64 print_matrix_int64 interface~pic_print_array->proc~print_matrix_int64 proc~print_matrix_sp print_matrix_sp interface~pic_print_array->proc~print_matrix_sp proc~print_packed_matrix_dp print_packed_matrix_dp interface~pic_print_array->proc~print_packed_matrix_dp proc~print_packed_matrix_int32 print_packed_matrix_int32 interface~pic_print_array->proc~print_packed_matrix_int32 proc~print_packed_matrix_int64 print_packed_matrix_int64 interface~pic_print_array->proc~print_packed_matrix_int64 proc~print_packed_matrix_sp print_packed_matrix_sp interface~pic_print_array->proc~print_packed_matrix_sp proc~print_vector_dp print_vector_dp interface~pic_print_array->proc~print_vector_dp proc~print_vector_int32 print_vector_int32 interface~pic_print_array->proc~print_vector_int32 proc~print_vector_int64 print_vector_int64 interface~pic_print_array->proc~print_vector_int64 proc~print_vector_sp print_vector_sp interface~pic_print_array->proc~print_vector_sp to_upper to_upper proc~set_brackets->to_upper proc~print_3d_tensor_int32->interface~pic_optional proc~print_3d_tensor_int32->interface~pic_print_array proc~print_3d_tensor_int32->proc~set_brackets proc~print_3d_tensor_int64->interface~pic_optional proc~print_3d_tensor_int64->interface~pic_print_array proc~print_3d_tensor_int64->proc~set_brackets proc~print_3d_tensor_sp->interface~pic_optional proc~print_3d_tensor_sp->interface~pic_print_array proc~print_3d_tensor_sp->proc~set_brackets proc~print_matrix_dp->interface~pic_optional proc~print_matrix_dp->proc~set_brackets interface~to_char to_char proc~print_matrix_dp->interface~to_char proc~print_matrix_int32->interface~pic_optional proc~print_matrix_int32->proc~set_brackets proc~print_matrix_int32->interface~to_char proc~print_matrix_int64->interface~pic_optional proc~print_matrix_int64->proc~set_brackets proc~print_matrix_int64->interface~to_char proc~print_matrix_sp->interface~pic_optional proc~print_matrix_sp->proc~set_brackets proc~print_matrix_sp->interface~to_char proc~print_packed_matrix_dp->interface~pic_optional proc~print_packed_matrix_dp->proc~set_brackets proc~print_packed_matrix_dp->interface~to_char proc~print_packed_matrix_int32->interface~pic_optional proc~print_packed_matrix_int32->proc~set_brackets proc~print_packed_matrix_int32->interface~to_char proc~print_packed_matrix_int64->interface~pic_optional proc~print_packed_matrix_int64->proc~set_brackets proc~print_packed_matrix_int64->interface~to_char proc~print_packed_matrix_sp->interface~pic_optional proc~print_packed_matrix_sp->proc~set_brackets proc~print_packed_matrix_sp->interface~to_char proc~print_vector_dp->interface~pic_optional proc~print_vector_dp->proc~set_brackets proc~print_vector_dp->interface~to_char proc~print_vector_int32->interface~pic_optional proc~print_vector_int32->proc~set_brackets proc~print_vector_int32->interface~to_char proc~print_vector_int64->interface~pic_optional proc~print_vector_int64->proc~set_brackets proc~print_vector_int64->interface~to_char proc~print_vector_sp->interface~pic_optional proc~print_vector_sp->proc~set_brackets proc~print_vector_sp->interface~to_char proc~to_char_char to_char_char interface~to_char->proc~to_char_char proc~to_char_dp to_char_dp interface~to_char->proc~to_char_dp proc~to_char_int32 to_char_int32 interface~to_char->proc~to_char_int32 proc~to_char_int64 to_char_int64 interface~to_char->proc~to_char_int64 proc~to_char_logical to_char_logical interface~to_char->proc~to_char_logical proc~to_char_matrix_dp to_char_matrix_dp interface~to_char->proc~to_char_matrix_dp proc~to_char_matrix_int32 to_char_matrix_int32 interface~to_char->proc~to_char_matrix_int32 proc~to_char_matrix_int64 to_char_matrix_int64 interface~to_char->proc~to_char_matrix_int64 proc~to_char_matrix_sp to_char_matrix_sp interface~to_char->proc~to_char_matrix_sp proc~to_char_sp to_char_sp interface~to_char->proc~to_char_sp proc~to_char_vector_dp to_char_vector_dp interface~to_char->proc~to_char_vector_dp proc~to_char_vector_int32 to_char_vector_int32 interface~to_char->proc~to_char_vector_int32 proc~to_char_vector_int64 to_char_vector_int64 interface~to_char->proc~to_char_vector_int64 proc~to_char_vector_sp to_char_vector_sp interface~to_char->proc~to_char_vector_sp

Called by

proc~~print_3d_tensor_dp~~CalledByGraph proc~print_3d_tensor_dp print_3d_tensor_dp interface~pic_print_array pic_print_array proc~print_3d_tensor_dp->interface~pic_print_array interface~pic_print_array->proc~print_3d_tensor_dp proc~print_3d_tensor_int32 print_3d_tensor_int32 interface~pic_print_array->proc~print_3d_tensor_int32 proc~print_3d_tensor_int64 print_3d_tensor_int64 interface~pic_print_array->proc~print_3d_tensor_int64 proc~print_3d_tensor_sp print_3d_tensor_sp interface~pic_print_array->proc~print_3d_tensor_sp proc~print_3d_tensor_int32->interface~pic_print_array proc~print_3d_tensor_int64->interface~pic_print_array proc~print_3d_tensor_sp->interface~pic_print_array

Variables

Type Visibility Attributes Name Initial
character(len=20), private :: print_format

Source Code

   subroutine print_3d_tensor_dp(matrix, format_type)
    !! Print a 3D tensor of ${T} values
      real(dp), intent(in) :: matrix(:, :, :)
      character(len=*), intent(in), optional :: format_type
      character(len=20) :: print_format

      print_format = pic_optional(format_type, default_format)

      print: block
         character(len=1) :: open_bracket, close_bracket
         integer(int32) :: k, rows, cols, depth
         rows = size(matrix, 1)
         cols = size(matrix, 2)
         depth = size(matrix, 3)
         call set_brackets(print_format, open_bracket, close_bracket)
         print *, open_bracket
         do k = 1, depth
            if (k > 1) print *, ","
            print *, open_bracket
            call pic_print_array(matrix(:, :, k), print_format)
            print *, close_bracket
         end do
         print *, close_bracket
      end block print

   end subroutine print_3d_tensor_dp