dbcsr_get_info Subroutine

public subroutine dbcsr_get_info(matrix, nblkrows_total, nblkcols_total, nfullrows_total, nfullcols_total, nblkrows_local, nblkcols_local, nfullrows_local, nfullcols_local, my_prow, my_pcol, local_rows, local_cols, proc_row_dist, proc_col_dist, row_blk_size, col_blk_size, row_blk_offset, col_blk_offset, distribution, name, matrix_type, data_type, group)

Arguments

Type IntentOptional Attributes Name
type(dbcsr_type), intent(in) :: matrix
integer, intent(out), optional :: nblkrows_total
integer, intent(out), optional :: nblkcols_total
integer, intent(out), optional :: nfullrows_total
integer, intent(out), optional :: nfullcols_total
integer, intent(out), optional :: nblkrows_local
integer, intent(out), optional :: nblkcols_local
integer, intent(out), optional :: nfullrows_local
integer, intent(out), optional :: nfullcols_local
integer, intent(out), optional :: my_prow
integer, intent(out), optional :: my_pcol
integer, optional, DIMENSION(:), POINTER :: local_rows
integer, optional, DIMENSION(:), POINTER :: local_cols
integer, optional, DIMENSION(:), POINTER :: proc_row_dist
integer, optional, DIMENSION(:), POINTER :: proc_col_dist
integer, optional, DIMENSION(:), POINTER :: row_blk_size
integer, optional, DIMENSION(:), POINTER :: col_blk_size
integer, optional, DIMENSION(:), POINTER :: row_blk_offset
integer, optional, DIMENSION(:), POINTER :: col_blk_offset
type(dbcsr_distribution_type), intent(out), optional :: distribution
character(len=*), intent(out), optional :: name
character(len=1), intent(out), optional :: matrix_type
integer, intent(out), optional :: data_type
integer, intent(out), optional :: group

Source Code

   SUBROUTINE dbcsr_get_info(matrix, nblkrows_total, nblkcols_total, &
                             nfullrows_total, nfullcols_total, &
                             nblkrows_local, nblkcols_local, &
                             nfullrows_local, nfullcols_local, &
                             my_prow, my_pcol, &
                             local_rows, local_cols, proc_row_dist, proc_col_dist, &
                             row_blk_size, col_blk_size, row_blk_offset, col_blk_offset, &
                             distribution, name, matrix_type, data_type, &
                             group)
      TYPE(dbcsr_type), INTENT(IN)                       :: matrix
      INTEGER, INTENT(OUT), OPTIONAL :: nblkrows_total, nblkcols_total, nfullrows_total, &
                                        nfullcols_total, nblkrows_local, nblkcols_local, nfullrows_local, nfullcols_local, &
                                        my_prow, my_pcol
      INTEGER, DIMENSION(:), OPTIONAL, POINTER           :: local_rows, local_cols, proc_row_dist, &
                                                            proc_col_dist, &
                                                            row_blk_size, col_blk_size, &
                                                            row_blk_offset, col_blk_offset
      TYPE(dbcsr_distribution_type), INTENT(OUT), &
         OPTIONAL                                        :: distribution
      CHARACTER(len=*), INTENT(OUT), OPTIONAL            :: name
      CHARACTER, INTENT(OUT), OPTIONAL                   :: matrix_type
      INTEGER, INTENT(OUT), OPTIONAL                     :: data_type, group

      TYPE(dbcsr_dist_prv_obj)                           :: dist
      TYPE(mp_comm_type)                                 :: my_group

      CALL dbcsr_get_info_prv(matrix=matrix%prv, &
                              nblkrows_total=nblkrows_total, &
                              nblkcols_total=nblkcols_total, &
                              nfullrows_total=nfullrows_total, &
                              nfullcols_total=nfullcols_total, &
                              nblkrows_local=nblkrows_local, &
                              nblkcols_local=nblkcols_local, &
                              nfullrows_local=nfullrows_local, &
                              nfullcols_local=nfullcols_local, &
                              my_prow=my_prow, &
                              my_pcol=my_pcol, &
                              local_rows=local_rows, &
                              local_cols=local_cols, &
                              proc_row_dist=proc_row_dist, &
                              proc_col_dist=proc_col_dist, &
                              row_blk_size=row_blk_size, &
                              col_blk_size=col_blk_size, &
                              row_blk_offset=row_blk_offset, &
                              col_blk_offset=col_blk_offset, &
                              distribution=dist, &
                              name=name, &
                              matrix_type=matrix_type, &
                              data_type=data_type, &
                              group=my_group)

      IF (PRESENT(distribution)) THEN
         distribution%prv = dist
      END IF

      IF (PRESENT(group)) group = my_group%get_handle()

   END SUBROUTINE dbcsr_get_info