count_bins Subroutine

public pure subroutine count_bins(nelements, bins, nbins, bin_counts)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nelements
integer, intent(in), DIMENSION(:) :: bins
integer, intent(in) :: nbins
integer, intent(out), DIMENSION(1:nbins) :: bin_counts

Source Code

   PURE SUBROUTINE count_bins(nelements, bins, nbins, bin_counts)
      INTEGER, INTENT(IN)                                :: nelements
      INTEGER, DIMENSION(:), INTENT(IN)                  :: bins
      INTEGER, INTENT(IN)                                :: nbins
      INTEGER, DIMENSION(1:nbins), INTENT(OUT)           :: bin_counts

      INTEGER                                            :: bin, i, i0, i1

      ! PURE: DBCSR_ASSERT(nelements .EQ. SIZE(bins))
      bin_counts(:) = 0
      i0 = LBOUND(bins, 1)
      i1 = i0 + nelements - 1
      DO i = i0, i1
         bin = bins(i)
         bin_counts(bin) = bin_counts(bin) + 1
      END DO
   END SUBROUTINE count_bins